본문 바로가기
프로그램

[파이썬] 문제 : turtle ㄱ,ㄴ,ㄷ,ㄹ 그리기

by 오디세이99 2023. 11. 24.
728x90
반응형

1. 함수를 사용하여 ㄱ , ,  , , 을 만들고 결과창에 그림이 나타나게 하시오.

 

2. 1번 문제를 활용하여, a를 누르면  , b를 누르면 ㄴ, c를 누르면 ㄷ , d를 누르면 ㄹ 을 결과창에 그림이 나타나게 하시오.

 

import turtle

turtle.hideturtle()     # 터틀 숨김
turtle.pensize(10)      # 펜 굵기 굵게 함

def move(x, y):         # 이동 함수. 이동시 펜을 들고, 이동하고, 펜을 내리고가 반복되므로 함수로 함듬
    turtle.penup()
    turtle.goto(x, y)
    turtle.down()
    
# ㄱ 그리기
def draw_g():
    turtle.forward(100)
    turtle.right(90)
    turtle.forward(100)
    turtle.left(90)

# ㄴ 그리기
def draw_n():
    turtle.right(90)
    turtle.forward(100)
    turtle.left(90)
    turtle.forward(100)

# ㄷ 그리기
def draw_d():
    turtle.forward(100)
    turtle.backward(100)
    turtle.right(90)
    turtle.forward(100)
    turtle.left(90)
    turtle.forward(100)

# ㄹ 그리기
def draw_r():
    turtle.forward(100)
    turtle.right(90)
    turtle.forward(50)
    turtle.right(90)
    turtle.forward(100)
    turtle.left(90)
    turtle.forward(50)
    turtle.left(90)
    turtle.forward(100)

# 초기 설정
turtle.speed("fastest")  # 그리는 속도 설정

# 도형 그리기
draw_g()
move(150, 0)
draw_n()
move(300, 0)
draw_d()
move(450, 0)
draw_r()

turtle.done()  # 그리기 종료

try:
    turtle.bye()
except:
    print("bye")

 

 

a,b,c,d 로 ㄱ,ㄴ,ㄷ,ㄹ 그리기

import turtle

turtle.hideturtle()
turtle.pensize(10)

def move(x, y):
    turtle.penup()
    turtle.goto(x, y)
    turtle.down()
    
# ㄱ 그리기
def draw_g():
    turtle.forward(100)
    turtle.right(90)
    turtle.forward(100)
    turtle.left(90)

# ㄴ 그리기
def draw_n():
    turtle.right(90)
    turtle.forward(100)
    turtle.left(90)
    turtle.forward(100)

# ㄷ 그리기
def draw_d():
    turtle.forward(100)
    turtle.backward(100)
    turtle.right(90)
    turtle.forward(100)
    turtle.left(90)
    turtle.forward(100)

# ㄹ 그리기
def draw_r():
    turtle.forward(100)
    turtle.right(90)
    turtle.forward(50)
    turtle.right(90)
    turtle.forward(100)
    turtle.left(90)
    turtle.forward(50)
    turtle.left(90)
    turtle.forward(100)

# 초기 설정
turtle.speed("fastest")  # 그리는 속도 설정

while True:
    key = input('a=ㄱ, b=ㄴ, c=ㄷ, d=ㄹ (종료:q):')
    turtle.clear()
    move(0, 0)
    if key == 'a':
        draw_g()
    elif key == 'b':
        draw_n()
    elif key == 'c':
        draw_d()
    elif key == 'd':
        draw_r()
    else:
        break

turtle.done()  # 그리기 종료

try:
    turtle.bye()
except:
    print("bye")

728x90
반응형

댓글