CSE101-Lab 6

Name:

Roll No:

Getting credit
Complete all required blank boxes and lines on this handout. When you are done, show your written answers
to one of the TAs. The TA may ask you a few questions to make sure you understand the material.
Submission: The docx file and edited version of PaintShapes.py, zipped into a file

1 Random Simulation Basics
The following script produces 4 lines of output:
# ShowRand.py
from random import randint as randi
from random import uniform as randu
N = 100000
count=0
for k in range(N):
x = randu(0,100)
if 10<=x<=20 or 45<=x<=70:
count +=1
print (float(count)/float(N))
count=0
for k in range(N):
x = randu(0,100)
if 10<=x<=45 and 20<=x<=60:
count +=1
print (float(count)/float(N))
count=0
for
k in range(N):
x = randi(1,20)
if x%3==1 or x%5==0:
count +=1
print (float(count)/float(N))
count=0
for
k in range(N):
x = randi(1,20)
if 13<=x<17:
count +=1
print (float(count)/float(N))

3) if rc%3==0: c = MAGENTA elif rc%3==1: c = CYAN else: c = BLUE so that we draw a Magenta disk with probability 1/3. the color is Magenta with probability 1/3.12). and a Blue disk with probability 5/12? Hint: randi(1. [Make the required changes in the PaintShapes.2 How could you change rc = randi(1. a Cyan disk with probability 1/4.Fill in the following table: I Think the Python Expression Notes Output Is 1 First Output Line 2 Second Output Line 3 Third Output Line 4 Fourth Output Line Says 2 PaintShapes Run the module PaintShapes.py and observe that it randomly places 500 color disks and squares in the figure window: Look at the computation of rangeR and sideRange values inside the for loop. 2. 2. and Blue with probability 1/3.py] . Cyan with probability 1/3.1 Show how to modify these assignment statements so that no painted shape is cut by the edge of the figure window? As it stands.

two units South. T = T + 'NN' elif r==2: # Hop East x = x + 1. ( -L. Answer: 3. or two units West.3 Random Walk Here is code that simulates a random walk inside a square with corners (L. (Hint. L). A hop is either two units North. -L). and T. L). and ( -L. The string T records the itinerary.0) and hops its way towards the edge of the square.count('S'). T = T + 'SS' else: # Hop West x = x-1.count('N'). (L. two units East. T = T + 'WW' else: break # Code Here The robot starts at (0. -L): x = 0 y = 0 T = “” for i in range 2000 : if abs(x) < L and abs(y) < L: # The robot has not reached the edge r = randi(1. 3.2 Add code after the Code Here comment so that the x.count('W'). An example T would be 'NNEENNSSWWSSWWEE'. Think about T.4) if r==1: # Hop North y = y + 1. T. T = T + 'EE' elif r==3: # Hop South y = y-1. Add code after the Code Here comment so that the number of hops that the robot took is assigned to the variable nSteps.count('E'). Answer: . T.1 Assume that L is a positive integer and that T has been produced by the for loop.y coordinates of the robot's final position are printed out.

Sign up to vote on this title
UsefulNot useful

Master Your Semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master Your Semester with a Special Offer from Scribd & The New York Times

Cancel anytime.