반응형

코드
import random
head = """
.---.
/ \
/ / @ @ \ \
| \ - / |
\ '---' /
\ /
'-----'
"""
tail = """
.---.
/ \
/ 1 0 0 \
| W O N |
\ /
\ /
'-----'
"""
print("동전 앞뒤 맞추기 게임을 시작하겠습니다.")
while True:
computer = random.randint(0, 1)
while True:
choice_str = input("동전의 면을 선택해주세요.! (0:앞, 1: 뒤) \n 나의 선택: ")
if choice_str == "0" or choice_str == "1":
choice = int(choice_str)
break
else:
print(f"0과 1이 아닌 숫자가 입력되었습니다.{choice_str}이(가) 입력되었습니다.")
print("동전의 면 결과")
if computer == 0:
print(head)
else:
print(tail)
print("나의 선택")
if choice == 0:
print(head)
else:
print(tail)
print("최종결과")
if computer == choice:
print("적중했습니다.!")
else:
print("아쉽지만 틀렸습니다")
retry = input("다시 시도하시겠습니까? (y/n)\n")
if retry.lower() == 'n':
print("종료되었습니다.")
break
실행값
동전의 면을 선택해주세요.! (0:앞, 1: 뒤)
나의 선택: 1
동전의 면 결과
.---.
/ / 1 0 0
| W O N |
\ /
\ /
'-----'
나의 선택
.---.
/ / 1 0 0
| W O N |
\ /
\ /
'-----'
최종결과
적중했습니다.!
다시 시도하시겠습니까? (y/n)
다시 시도하시겠습니까? (y/n)n
동전의 면을 선택해주세요.! (0:앞, 1: 뒤)
나의 선택: 0
동전의 면 결과
.---.
/ / / @ @ \
| \ - / |
\ '---' /
\ /
'-----'
나의 선택
.---.
/ / / @ @ \
| \ - / |
\ '---' /
\ /
'-----'
최종결과
적중했습니다.!
다시 시도하시겠습니까? (y/n)
n
종료되었습니다.
배운점
while True 안에 또 while True를 사용할 수 있다는 것을 알게 되었다.
큰 while True에서는 랜덤을 주는 값을 반복하게 만들고 그 안에 whie True는 내가 입력한 값을 0, 1이 아닌 숫자를 입력하면 다시 입력할 수 있도록 반복하는 것이다.
반응형
'두두 IT > 예제로 풀어보는 파이썬' 카테고리의 다른 글
| 주문 프로그램 if문 조건문 사용 (0) | 2026.05.11 |
|---|---|
| 체질량 지수 BMI 계산 프로그램 만들기 (0) | 2026.05.10 |
| 잠금 해제 프로그램 만들기 | 조건문 if문 (0) | 2026.05.10 |
| 원의 넓이와 둘레 구하는 프로그램 만들기 | float(), 거듭제곱 **, 반올림하기 (0) | 2026.05.10 |
| 1234초는 몇분 몇초일까요? | 몫과 나머지 연산자 활용하기(//, %) (0) | 2026.05.09 |