21.5 연습문제: 오각별 그리기

다음 소스 코드를 완성하여 오각별이 그려지게 만드세요.

practice_pentagram.py

import turtle as t
 
n = 5
t.shape('turtle')
for i in range(n):
                      
                      
                      
                      
그림 21-13 오각별
그림 ‎21 13 오각별

정답

    t.forward(100)
    t.right((360 / n) * 2)
    t.forward(100)
    t.left(360 / n)

해설

5각형을 그릴 때는 72도(360 / 5)를 회전합니다. 이때 별 꼭지점은 72도를 한 번 더 회전해서 144도입니다. 따라서 t.forward(100)으로 선을 한 번 그리고 t.right((360 / n) * 2)으로 오른쪽으로 144도 회전한 뒤 t.forward(100)으로 선을 그립니다. 그리고 별 꼭지점을 그린 뒤 다음 꼭지점을 그릴 때는 t.left(360 / n)으로 왼쪽으로 72도 회전합니다. 이렇게 5번 반복하면 오각별을 그릴 수 있습니다.

그림 21-14 오각별 그리기
그림 ‎21 14 오각별 그리기