[경성 프로그래밍 교육 2일차]파이썬 프로그래밍 - 랜덤워크

중고생을 위한 경성 프로그래밍 교육(파이썬 프로그래밍) - 2.제어문  파이썬특강2.pptx



랜덤워크(파이썬 프로그래밍)

랜덤 워크(random walk)를 시뮬레이션에서 turtle 그래픽을 사용할 수 있다.

격자 공간에서 랜덤 워크(정원을 산책한다거나 어떤 꽃을 보기 위해 돌아다니는 것과 같이)를 시뮬레이션 하는 turtle 프로그램을 작성해보자.






import turtle

from random import randint


turtle.speed(1) # turtle을 최저속도로 설정한다.


# 16 x 16 격자를 그린다.

turtle.color("gray") # 격자의 색상

x = -80

for y in range(-80, 80+1, 10):

turtle.penup()

turtle.goto(x,y)

turtle.pendown()

turtle.forward(160)


y = 80

turtle.right(90)

for x in range(-80, 80+1, 10):

turtle.penup()

turtle.goto(x, y)

turtle.pendown()

turtle.forward(160)


turtle.pensize(3)

turtle.color("red")


turtle.penup()

turtle.goto(0,0)

turtle.pendown()


x = y = 0 # 격자 중앙에서 현재 pen의 위치

while abs(x) < 80 and abs(y) < 80:

r = randint(0, 3)

if r == 0:

x += 10 #오른쪽으로 걷는다.

turtle.setheading(0)

turtle.forward(10)

elif r == 1:

y -= 10 #아래쪽으로 걷는다.

turtle.setheading(270)

turtle.forward(10)

elif r == 2:

x -= 10 #왼쪽으로 걷는다.

turtle.setheading(180)

turtle.forward(10)

elif r == 3:

y += 10 #위쪽으로 걷는다.

turtle.setheading(90)

turtle.forward(10)

turtle.done()



실행결과