반응형
사용자가 마우스 버튼을 클릭하면 그 위치에 정사각형을 그리는 프로그램을 작성해보자.
import turtle
t=turtle.Turtle()
t.shape('turtle')
def square(length):
for i in range(4):
t.forward(length)
t.left(90)
def drawit(x, y):
t.penup()
t.goto(x, y)
t.pendown()
t.begin_fill()
t.color('green')
square(50)
t.end_fill()
s = turtle.Screen()
s.onscreenclick(drawit)
▶️ square() 사용자 정의 함수를 생성해 왼쪽으로 90도씩 length만큼 앞으로 이동하며 4번 반복해 사각형을 그림
def square(length):
for i in range(4):
t.forward(length)
t.left(90)
▶️ drawit() 사용자 정의 함수를 생성해 x,y 좌표로 이동해 녹색을 채우며 한 변의 길이가 50인 사각형을 그림
def drawit(x, y):
t.penup()
t.goto(x, y)
t.pendown()
t.begin_fill()
t.color('green')
square(50)
t.end_fill()
▶️ s.onscreenclick(drawit) : 사용자가 마우스를 클릭하는 곳에 drawit 함수에 저장된 그림을 그림
사용자에게 색상과 한 변의 길이, 몇 각형으로 그릴 것인지까지 입력 받아 그림을 그리는 프로그램을 작성해보자.
단, 0을 입력하면 원을 그림
import turtle
t=turtle.Turtle()
t.shape('turtle')
def shape(length, n):
for i in range(n):
t.forward(length)
t.left(360/n)
if n == 0:
t.circle(length)
n = int(input('몇각형으로 그릴까요? '))
c = input('무슨 색으로 그릴까요? ')
length = int(input('한 변의 길이는? '))
def drawit(x, y):
t.penup()
t.goto(x, y)
t.pendown()
t.begin_fill()
t.color(c)
shape(length, n)
t.end_fill()
s = turtle.Screen()
s.onscreenclick(drawit)
반응형
'Language > Python' 카테고리의 다른 글
[ Python ] 숫자 거꾸로 출력하기 프로그램 (0) | 2021.09.01 |
---|---|
[ Python ] 한 붓 그리기 프로그램 (0) | 2021.09.01 |
[ Python ] n각형을 그리는 함수 작성 프로그램 (0) | 2021.09.01 |
[ Python ] 환전 계산기 프로그램 (0) | 2021.09.01 |
[ Python ] BMI 계산 프로그램 (0) | 2021.09.01 |