본문 바로가기
IT/프로그래밍

두근두근 파이썬 연습문제 7장

by nutrient 2020. 12. 2.
728x90
728x170

두근두근 파이썬 연습문제 7장

 

1번 눈사람을 그리는 함수를 작성하고 이 함수를 여러 번 호출하여서 랜덤한 위치에 눈사람을 그리는 프로그램을 작성하라. 아래 실행 결과와 최대한 비슷하게 작성해보자.

import turtle

t=turtle.Turtle()

t.shape("turtle")

s=turtle.Screen()

s.bgcolor('skyblue');t.color('black','white')

​

def draw_snowman(x,y):

    t.up()

    t.goto(x,y+100)

    t.down()

    t.begin_fill()

    t.circle(30)

    t.end_fill()

    

    t.up()

    t.goto(x,y+70)

    t.down()

    t.lt(25)

    t.fd(70)

    t.fd(-70)

    t.lt(110)

    t.fd(80)

    t.fd(-80)

    t.seth(0)                   # t.seth(n) = 거북이가 특정 각도를 바라보도록 회전

    t.begin_fill()

    t.circle(25)

    t.end_fill()

    

    t.up()

    t.goto(x,y)

    t.down()

    t.begin_fill()

    t.circle(40)

    t.end_fill()

​

for i in range(3):

    draw_snowman(200*i-200,0)

 

 

 

 

 

2번 6각형을 그리는 draw_hexa() 함수를 작성하고 이 함수를 호출하여서 다음과 같은 벌집 모양을 화면에 그려보자.

import turtle

t=turtle.Turtle()

t.shape("turtle")

​

def hexagon():

    for i in range(6):

        t.fd(50)

        t.lt(360/6)

​

for i in range(6):

    t.fd(50)

    t.rt(60)

    hexagon()

 

 

 

 

 

 

3번 함수 f(x)=x^2+1 을 계산하는 함수를 작성하고 이 함수를 이용하여 화면에 f(x)를 그려보자.

import turtle

t=turtle.Turtle()

t.shape("turtle")

​

def func():

    for i in range(150):

        t.goto(i,(i**2+1)*0.01)

​

t.fd(300)

t.fd(-300)

t.lt(90)

t.fd(300)

t.fd(-300)

t.rt(90)

func()

 

 

 

 

 

4번 터틀 그래픽에서 거북이를 움직이지 않고 선을 긋는 함수 draw_line()을 정의하고 이것을 이용하여 다음과 같은 거미줄과 같은 모양을 그려보자. 거북이는 항상 중앙에 위치한다.

import turtle

t=turtle.Turtle()

t.shape("turtle")

​

def draw_line():

    turtle.fd(100)

    turtle.backward(100)

    turtle.lt(30)

for i in range(12):

    draw_line()

 

5번 다음과 같이 이름을 받아서 생일 축하 노래를 출력하는 함수 happyBirtday()를 작성하고 테스트하시오.

def HB(name):

    print("=======================")

    print("Happy Birthday to you!")

    print("Happy Birthday to you!")

    print("Happy Birthday, dear", name)

    print("Happy Birthday to you!")

HB(input())

 

 

 

 

 

6번 사용자로부터 2개의 정수를 받아서 수학 문제를 만들어서 화면에 출력하는 함수를 작성하고 테스트하시오.

a=int(input("첫 번째 정수 : "))

b=int(input("두 번째 정수 : "))

​

def sum(a,b):

    return a+b

add=sum(a,b)

print("정수",str(a)+"+"+str(b)+"의 합은 ?",add)

 

 

 

 

 

7번 파이를 나타내는 PI=3.14를 전역 변수로 하여 원의 면적을 계산하는 함수 circleArea(radius)과 원의 둘레를 계산하는 함수 circleCircumference(radius)를 작성하고 테스트하라.

PI=3.14

def circleArea(radius):

    return PI*(radius**2)

def circleCircumference(radius):

    return 2*PI*radius

​

print("반지름이 5인 원의 면적 : ",circleArea(5))

print("반지름이 5인 원의 둘레 : ",circleCircumference(5))

 

 

 

 

 

8번 덧셈, 뺄셈, 곱셈, 나눗셈을 수행하는 함수를 각각 작성하고 테스트하라.

def sum(a,b):

    return a+b

def min(a,b):

    return a-b

def mul(a,b):

    return a*b

def div(a,b):

    return a/b

​

a=int(input("첫 번째 정수 : "))

b=int(input("두 번째 정수 : "))

print("("+str(a),"+",str(b)+") =",sum(a,b))

print("("+str(a),"-",str(b)+") =",min(a,b))

print("("+str(a),"*",str(b)+") =",mul(a,b))

print("("+str(a),"/",str(b)+") =",div(a,b))

 

 

 

 

스포츠카를 못타는 인생은 진짜 불쌍한 인생이다

인터넷에서 유명한 글인 스포츠카를 못타는 인생은 진짜 불쌍한 인생이다에 대해 알아보도록 하겠습니다. 이 글을 처음부터 끝까지 읽다 보면 스포츠카를 못타는 인생은 진짜 불쌍한 인생이다

tistorysolution.tistory.com

 

728x90
그리드형

댓글