본문 바로가기
Programming/Python

[ L2P ] 재귀 : 다른 방식의 루프

by The Programmer 2023. 9. 24.

반복의 다른 방법, 재귀를 연습해보겠습니다.
 
import turtle

ttlWin = turtle.Screen()
ttlWin.tracer(0,0)
# 그리기 속도 개선. 결과 빨리 보기
#  (n Frame num., delay time millisec.)


t1 = turtle.Pen()

count = 0

def box1():
    for i in range(4):
        t1.fd(50)
        t1.rt(90)

def move1():
    t1.pu()
    t1.rt(90)
    t1.fd(70)
    t1.lt(75)    # 15도 줄여서 회전각 만들기.
    t1.pd()

def run():
    global count    #required
    # count = 0
    # 주의.
    # 초기화를 run()에서 하면
    # 재귀 콜 마다 0이됨.
    # 그럼 if 문 제한 실패.
    # 그 결과 무한반복됨.

    box1()
    move1()
    count = count + 1
    if count <= 23:
        run()

def main():
    run()
    t1.ht()
    turtle.done()    # 결과 확인용 대기.

main()


# 재귀 루프가 실행되는 조건과
# 재귀 루프를 빠져나오는 조건에 주의하세요.
# Tested in PyDroid 3.


Happy programming!

^.^;

'Programming > Python' 카테고리의 다른 글

Free IDE - Thonny  (0) 2024.09.08
turtle.pencolor() 함수  (0) 2023.12.10
[ L2P ] random Module  (0) 2023.09.10
[ L2P ] OnKeyPress()  (0) 2023.08.20
L2P 연습 : turtle.Screen.onclick() - 001  (0) 2023.08.06