출처 : 반크_세계유산 석굴암
문제]
1~13사이의 숫자를 컴퓨터가 발생하면 맞추는 게임을 프로그램으로 작성하시오.
조건)
▶ 1~13 이외의 수가 입력되면 에러메세지를 출력하고 다시 입력하도록 하시오.
▶ 숫자 이외의 문자열이 입력되면 에러메세지를 출력하고 다시 입력하도록 하시오.
▶ 사용자가 입력한 수가 높으면 입력한 숫자가 크다고 출력하시오.
▶ 사용자가 입력한 수가 작으면 작다고 출력하시오.
▶ 사용자가 숫자를 맞추면 몇 번 회차에 맞추었다고 출력하시오.
▶ 게임을 계속할 지 여부를 체크하시오.
▶ 게임의 수가 3회를 넘으면 게임을 절제할 수 있도록 메세지를 출력하시오.
▶ 게임이 끝나면 "적당한 게임은 일의 능률을 극대화 시켜줍니다."를 출력하시오.
▶ 게임이 끝나면 수고하였다는 메세지와 함께 프로그램을 종료하시오.
참고풀이 결과]
참고풀이]
import random
Tot_Count=0
while True:
Tot_Count+=1
Computer_su=random.randint(1,13)
Count=0
while True:
Count+=1
while True:
try:
Player_su=int(input("1~13사이의 수를 입력하시오 : "))
if Player_su>=1 and Player_su<=13:
break
print(f'1~13사이의 수가 아닙니다.')
print("다시 입력하세요...")
except:
print("수가 아닙니다.")
print("다시 입력하세요...")
if Player_su>Computer_su:
print("입력한 숫자가 큼니다.")
elif Player_su<Computer_su:
print("입력한 숫자가 작습니다.")
else:
print(f"축하합니다! {Count}회째에 맞추었습니다.")
break
#계속여부 체크부분
if Tot_Count>=3:
print(f"게임을 절제할 능력도 필요합니다.")
while True:
Chk=input("계속하시겠습니까?(y/n) ")
if Chk.lower()=='y' or Chk.lower()=='n':
break
print("y/Y/n/N만 입력하세요.")
print("다시 입력하세요...")
if Chk.lower()=='n':
break
print("적당한 게임은 일의 능률을 극대화 시켜줍니다.")
print("수고하셨습니다.")
대한민국의 아름다운 영토, 독도의 봄
'프로그램 > Python 1000제' 카테고리의 다른 글
Python 76제] 날짜입력하면 요일구하기 (0) | 2022.05.13 |
---|---|
Python 75제] 년월일 입력하면 요일을 출력하기. (0) | 2022.05.13 |
Python 73제] 파이썬 EXPRESS p198 01번 (0) | 2022.04.29 |
Python 72제] 파이썬 EXPRESS p193 도전문제 (0) | 2022.04.29 |
Python 71제] 파이썬 EXPRESS p192 도전문제 (0) | 2022.04.29 |
댓글