Self Study

2-1 터틀 그래픽 프로그램을 수정해서 마우스 왼쪽 버튼과 마우스 가운데 버튼의 기능을 통합해 보자. 즉 마우스 왼쪽 버튼만 눌러도 임의의 색상이 지정되고 거북이의 크기가 변경되면서 선이 그려지도록 하자.

더보기

답 :

import turtle
import random

## 함수 선언 부분 ##
def screenLeftClick(x, y):
    global r, g, b
    turtle.pencolor((r, g, b))
    turtle.pendown()
    turtle.goto(x, y)
    tSize = random.randrange(1, 10)
    turtle.shapesize(tSize)
    r = random.random()
    g = random.random()
    b = random.random()
    
def screenRightClick(x, y):
    turtle.penup()
    turtle.goto(x, y)
    
## 변수 선언부분 ##
pSize = 10
r, g, b = 0.0, 0.0, 0.0

## 메인 코드 부분 ##
turtle.title('거북이로 그림 그리기')
turtle.shape('turtle')
turtle.pensize(pSize)

turtle.onscreenclick(screenLeftClick, 1)
turtle.onscreenclick(screenRightClick, 3)

turtle.done()

 

연습문제

1. 다음은 변수에 대한 설명입니다. 거리가 먼 것을 하나 고르세요.

더보기

답 : 4

 

2. n1과 n2 변수를 더해서 n3에 넣으라는 의미의 코드를 고르세요.

더보기

답 : 3

 

3. 다음 코드가 출력하는 결과를 고르세요.

n1 = 10
n2 = 5
res = n1 - n2
print(n1, '-', n2, '=', res)
더보기

답 : 2

 

4. 파이썬 IDLE을 종료하는 함수를 고르세요.

더보기

답 : 4

 

5. 다음 코드를 실행하면 출력되는 결과를 쓰세요.

더보기

답 : 10 * 5 = 50

 

6. 다음 코드는 두 수를 입력받고 계산하는 코드이지만 실행 오류가 발생합니다. 정상적으로 실행되도록 3행을 수정하세요.

n1 = input("숫자1-->")
n2 = input("숫자2-->")
res = n1 = n2
print(n1, "+", n2, "=", res)

실행 결과

숫자1-->100

숫자2-->50

100 + 50 = 150

 

더보기

답 :

n1 = input("숫자1-->")
n2 = input("숫자2-->")
res = int(n1) + int(n2)
print(n1, "+", n2, "=", res)

 

7. 정수 3개를 입력받은 후에 세 숫자의 덧셈 및 곱셈을 출력하는 코드를 작성하세요.

더보기

답 :

a=int(input("숫자1 입력: "))
b=int(input("숫자2 입력: "))
c=int(input("숫자3 입력: "))
result=a+b+c
print(a, "+", b, "+", c, "=", result)
result=a*b*c
print(a, "*", b, "*", c, "=", result)

 

8. 화면에 마우스 오른쪽 버튼을 클릭하면 거북이가 마우스를 클릭한 위치까지 랜덤한 색상으로 선을 그리면서 이동한 후, 랜덤한 크기, 각도의 거북이 도장이 찍히는 프로그램을 작성하세요.

힌트1 거북 색상은 turtle.color(r, g, b)로 설정한다.

힌트2 거북 도장은 turtle.stamp()를 사용한다.

더보기

답 :

import turtle
import random

## 함수 선언 부분 ##
def screenRightClick(x, y):
    global r, g, b
    turtle.color(r, g, b)
    turtle.stamp()
    turtle.pencolor((r, g, b))
    turtle.pendown()
    turtle.goto(x, y)
    tangle = random.randrange(1, 360)
    tSize = random.randrange(1, 10)
    turtle.shapesize(tSize)
    r = random.random()
    g = random.random()
    b = random.random()
  
## 변수 선언부분 ##
pSize = 10
r, g, b = 0.0, 0.0, 0.0

## 메인 코드 부분 ##
turtle.title('거북이로 그림 그리기')
turtle.shape('turtle')
turtle.pensize(pSize)

turtle.onscreenclick(screenRightClick, 3)

turtle.done()

 

 

*주의사항 : 제가 직접 푼 것이므로 틀린 부분이 있을 수 있습니다. 오타나 틀린 부분 지적 환영!

 

+ Recent posts