Language/Python

두근두근 파이썬 CH8 연습문제

Return 2021. 6. 22. 19:46

1번.

num_list = []   #리스트 생성

for i in range(5):
    a = int(input(("정수를 입력하시오 :")))
    num_list.append(a)     #받아서 리스트에 삽입한다.

sum = 0 # sum 값 초기화

for j in range(len(num_list)):
    sum = sum + num_list[j]  #총 합을 구한다.

print("평균 = {}".format(sum /len(num_list))) #평균을 구한다.

2번.

import random

couters = [0,0,0,0,0,0]  #리스트 생성

for i in range(1000):  # 천번 던진다.
    value = random.randint(0,5)
    couters[value] = couters[value] + 1 #해당하는 couters[value] 에 1씩 더한다.

for j in range(6):
    print("주사위가 {} 인 경우는 {}".format(j+1,couters[j])) #j가 0~5 까지이므로 1씩 더하여 1~6 만들어준다.

3번.

contacts = {} #딕셔너리 생성

while True:    #이름 입력 안될때까지 계속 입력모드
    name = input("(입력모드)이름을 입력하시오")
    if not name:
       break
    tel = input("전화번호를 입력하시오") #tel을 value에 저장 name = key
    contacts[name] = tel

while True: #입력모드에서 이름 입력 안될때 부터 검색모드 시작
    name2 = input("(검색모드)이름을 입력하시오 : ")
    print("{}의 전화번호는 {}입니다.".format(name2,contacts[name2]))
    if not name2:
        break

4번.

import turtle as t
import random

t.shape("turtle")
color_list = ["yellow","red","purple","blue"] #색갈   리스트를 만든다.


def draw_sqare():    #사각형 그리는 함수 만든다.
    for i in range(4): #4번 그린다.
        x = random.randint(-300,300)  #x,y위치 지정
        y = random.randint(-300,300)

        t.up()
        t.goto(x,y)
        t.down()
        t.fillcolor(color_list[i]) #색갈 하나씩 뽑아온다.
        t.begin_fill()#색갈 채우기 시작

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

        t.end_fill() #색갈 채우기 끝


(draw_sqare()) #함수실행

t.xitonclick()

5번.

import turtle as t
import random

t.shape("turtle")


def draw_shape(c,length,sides,x,y): #c: color ,length:길이 ,sides :다각형 , x,y :위
    t.up()
    t.goto(x,y)
    t.down()
    t.color("black",c)
    t.begin_fill()
    for i in range(sides): # 삼각형,사각형 등 다각형의 종류 결정
        t.forward(length)
        t.left(360/sides)
    t.end_fill()


for c in ["yellow", "red", "purple", "blue","orange","skyblue"]:  #색깔 결정 
    x = random.randint(0, 200)
    y = random.randint(0, 200)
    length = random.randint(50, 150)
    sides = random.randint(3, 8)
    draw_shape(c, length, sides, x, y)

6번.

import turtle as t
import random

t.shape("turtle")
t.bgcolor("black")

color_list=["red","blue","green","skyblue","purple","orange"] #색깔 리스트 생성

def draw_star(color,length,x,y):
    t.up()
    t.goto(x,y)
    t.down()
    t.color(color,color)
    t.begin_fill()
    for i in range(5):# 별그리는 동작
        t.forward(length)
        t.right(144)
    t.end_fill()


for j  in range(10):
    x= random.randint(-100,200) #위치지정
    y =random.randint(-100,200)
    length = random.randint(20,100)#길이지정
    color = color_list[j%6]#색깔지정
    draw_star(color,length,x,y)

7번.

domains ={}   #딕셔너리 생성 

domains["kr"] = "대한민국"  #딕셔너리에 추가 
domains["sk"] = "슬로바키아"
domains["no"] = "노르웨이"
domains["us"] = "미국"
domains["jp"] = "일본"
domains["hu"] = "헝가리"
domains["de"] = "독일"

for k,v in domains.items(): #키와 값 출력
    print(k,":",v)

8번.

problems = {"파이썬" : "최근에 가장 떠오르는 프로그래밍 언어",
            "변수:" : "데이터를 저장하는 메모리 공간",
            "함수" : "작업을 수행하는 문장들의 집합에 이름을 붙인것",
            "리스트" : "서로 관련이 없는 항목들의 모임 "}

for word in problems.keys():
    print(problems[word]) #키에대한 값 출력
    print("1.파이썬   2.함수    3.리스트    4.변수")
    answer = input()

    if answer == word: #정답 ,오답 
        print("정답")

    else:
        print("오답")