[파이썬] 반복문 연습 - turtle 도형그리기

1. 파이썬에서 기본으로 제공하는 터틀을 불러옵시다.

import turtle as t

t.shape('turtle')

t.forward(100)
t.right(90)

turtle로 그림그리기

2. turtle로 사각형 그리기

import turtle as t

t.shape('turtle')

t.forward(100)
t.right(90)
t.forward(100)
t.right(90)
t.forward(100)
t.right(90)
t.forward(100)
t.right(90)

turtle로 사각형 그리기

3. 반복문으로 사각형 그리기

스크래치로 사각형 그리기로 반복문을 연습해보자

for문이 익숙하지 않은 경우에는, 스크래치를 통해 먼저 연습을 해보자. 

(4)번 반복하기 블럭에 해당하는 문구는 for i in range(4): 이다.

import turtle as t

t.shape('turtle')

for i in range(4):
    t.forward(100)
    t.right(90)

4. 사각형을 위치를 바꿔서 그리기

다른 위치에 사각형을 그리려먼 코드를 어떻게 수정해야 할까?

import turtle as t

t.shape ('turtle')

for i in range(4):
    t.forward(100)
    t.right(90)

for i in range(4):
    t.forward(100)
    t.left(90)

for i in range(4):
    t.backward(100)
    t.right(90)

for i in range(4):
    t.backward(100)
    t.left(90)

5. 반복문으로 삼각형 그리기

??? 삼각형은 몇 도를 돌아야 되지?

HINT) 사각형이 한 번에 90도를 돈 이유는 

사각형의 꼭지점 수가 4개, 한 바퀴는 360도, 그래서 360/4=90도

그렇다면 삼각형은?

import turtle as t

t.shape ('turtle')

for i in range(3):
    t.forward(100)
    t.right(120)

삼각형의 꼭지점의 개수는 3개, 360도를 3으로 나누면 120도, 120도씩 3번 돌면 360이 만들어진다.

 

6. 오각형은 어떻게 그려야 할까?

HINT) 몇 번을 몇 도씩 돌아야, 360도가 만들어 질까? 로 생각해보면 된다.

120도씩 3번 돌면, 삼각형 120 × 3 = 360

90도씩 4번 돌면, 사각형 90 × 4 = 360

360 / n각형 = 

import turtle as t

t.shape ('turtle')

for i in range(5):
    t.forward(100)
    t.right(72)

오각형 그리기 성공

7. n각형그리기

몇 각형이 되었든지 간에, 반복 횟수랑 360를 n으로 나눠주기만 하면 그릴 수 있다. 

import turtle as t

t.shape ('turtle')

n=128

for i in range(n):
    t.forward(100)
    t.right(360/n)

n에 128을 넣었더니 화면 밖으로 나가버렸다...

한 참을 지나서야 화면 밖으로 가출했던 turtle이 돌아왔다...

반응형