제가 수강했던 과목의 교수님께서는 매주 간단한 파이썬 퀴즈를 내주셨습니다. 매주 내주시는 퀴즈 외에 중간고사 전 주, 기말고사 전 주에 난이도가 있는 과제를 총 두 번 내주셨는데 주 교재인 "두근두근파이썬" 에서 문제를 골라 푸는 방식이였습니다.
교수님께서 제시한 문제입니다.
-4장 연습문제 5번
-4장 연습문제 8번
-5장 연습문제 4번
-5장 연습문제 7번
-6장 연습문제 12번
4장 연습문제 5번
기호([])와 중간의 삽입할 문자열(python)을 입력하면 [python] 이런식으로 출력하라는 문제입니다.
userA,userB=input("기호를 입력하시오: ") userC=input("중간에 삽입할 문자열을 입력하세요: ") print(userA+userC+userB)
처음에 조금 어렵게 생각하여 list.append로 리스트에 입력받은것을 하나씩 저장하려고 했으나 너무 지저분해지고 생각했던 것 처럼 깔끔하게 출력되지않아 그냥 심플하게 코딩하였습니다.
4장 연습문제 8번
사용자가 입력하는 3개의 좌표를 저장하고 이 좌표대로 거북이를 이동시키는 문제입니다.
#4장 8번 import turtle t = turtle.Turtle() t.shape("turtle") list_xy=[] x1=int(input("x1: ")) list_xy.append(x1) y1=int(input("y1: ")) list_xy.append(y1) x2=int(input("x2: ")) list_xy.append(x2) y2=int(input("y2: ")) list_xy.append(y2) x3=int(input("x3: ")) list_xy.append(x3) y3=int(input("y3: ")) list_xy.append(y3) t.goto(list_xy[0],list_xy[1]) t.goto(list_xy[2],list_xy[3]) t.goto(list_xy[4],list_xy[5])
실행 화면입니다.
5장 연습문제 4번
학생의 시험점수를 물어보고 점수에 맞게 등급을 출력하는 문제입니다.
교수님께서 코드가 같으면 0점처리한다고 하셔서 일부러 grade리스트에 저장한 것도 있습니다. ㅋㅋ 그냥 print문에 집어넣어도 되는데 안겹치려고 조금 지저분하게 코딩했습니다.
#5장 4번 userGrade=float(input("성적을 입력하세요: ")) if (userGrade<0): raise Exception("성적은 0점 이상이여야 합니다.") grade=['A','B','C','D','F'] if userGrade>=90: print(grade[0]+"학점입니다.") elif userGrade>=80: print(grade[1]+"학점입니다.") elif userGrade>=70: print(grade[2]+"학점입니다.") elif userGrade>=60: print(grade[3]+"학점입니다.") else: print(grade[4]+"학점입니다.")
5장 연습문제 7번
2자리 숫자로 이루어진 복권이 있는데, 사용자가 두자리(자릿수 상관 X)를 맞추면 100만원, 자릿수에 관계없이 한자리만 맞으면 50만원을 출력하는 문제입니다. 실제로 이런 복권이 있다면 얼마나 좋을까요 ㅎ
#5장 7번 import random lottoUser = int(input("복권번호를 입력하세요(0에서 99사이): ")) divUser1 = lottoUser // 10 divUser2 = lottoUser % 10 lottoCom = random.randint(1,99) divCom1 = lottoCom // 10 divCom2 = lottoCom % 10 if 1<=lottoCom<=9: print("당첨번호는",str(0)+str(lottoCom),"입니다") else: print("당첨번호는",lottoCom,"입니다") if (divUser1==divCom1 and divUser2==divCom2) or (divUser1==divCom2 and divUser2==divCom1): print("상금은 100만원입니다.") elif divUser1==divCom1 or divUser1==divCom2 or divUser2==divCom1 or divUser2==divCom2: print("상금은 50만원입니다.") else: print("상금은 없습니다.")
6장 연습문제 12번
터틀그래픽으로 sin그래프를 그리는 문제입니다.
사실 삼각함수 배울때도 그냥 이렇게 생겼다 만 외웠지 뭐랑 뭐가 곱해져서 이렇게 나온다 라고 공부를 하지 않았기 때문에 식 작성하는게 어려웠습니다. (구글링이 없었으면 저는.. )
#6장 12번 import turtle import math t = turtle.Turtle() t.shape("turtle") t.color("red","yellow") t.penup() t.goto(-200,0) t.pendown() for i in range(360): sinxRadian = math.sin(3.14*i / 180.0) print(sinxRadian) t.goto(i-200,sinxRadian*150)
출력화면입니다. print로 값을 출력하는 코드를 작성했더니 그래프가 그려질 때 마다 값이 출력되네요
'프로그래밍 > python' 카테고리의 다른 글
[python] 백준 2941 크로아티아 알파벳 (0) | 2021.12.26 |
---|---|
[학교/파이썬/20.06.22] 과제2 (1) | 2020.06.30 |
[동아리/파이썬/20.05.15] 4주차 파이썬 프로그래밍 (0) | 2020.06.28 |
[동아리/파이썬/20.04.24] 3주차 파이썬 프로그래밍 (0) | 2020.06.28 |
[동아리/파이썬/20.04.17] 2주차 파이썬 프로그래밍 (0) | 2020.06.28 |