User Flow 설계도
발생한 error
문제 상황
원인
숫자로 변환할 수 없는 문자열이 입력값으로 들어왔을 때 발생
해결방안
입력값을 문자로 비교해서 해결
입력값이 숫자로서 값을 비교하거나 연산하는 것이 아니었기에 사용할 수 있었던 방법
Python 코드
import random
import time
def error_page(mini, maxi):
print(str(mini) + "~" + str(maxi) + "사이에 숫자만 입력 가능합니다!")
def exit_page():
print("게임을 종료합니다.", end="")
for i in range(2):
time.sleep(0.5)
print(".", end="")
exit()
def start():
while True:
minimum = 1
maximum = 100
print("=== UP & DOWN Game ===")
print("1. 시작하기")
print("0. 종료하기")
action = input()
if (action == "0"):
exit_page()
elif (action == "1"):
rand_num = random.randint(1, 100)
# print("rand_num: " + str(rand_num))
while True:
print("숫자를 입력해주세요(" + str(minimum) + "~" + str(maximum) + ") >>")
num = input()
if not num.isnumeric() or int(num) < minimum or int(num) > maximum:
error_page(minimum, maximum)
continue
if (int(num) == rand_num):
while True:
print("정답입니다!")
print("1. 다시하기")
print("0. 종료하기")
action = input()
if (action == "0"):
exit_page()
elif (action == "1"):
minimum = 1
maximum = 100
rand_num = random.randint(1, 100)
break
else:
error_page(0, 1)
elif int(num) < rand_num:
minimum = int(num)
print("UP!")
elif int(num) > rand_num:
maximum = int(num)
print("DOWN!")
else:
error_page(0, 1)
# Game Start
start()
'-- 기타 -- > IT KOREA 국비 지원 강의' 카테고리의 다른 글
@PathVariable (0) | 2024.03.11 |
---|---|
Spring boot (0) | 2024.03.07 |
day067 (0) | 2024.03.07 |
QnA (0) | 2024.03.06 |
[Spring] 자체 프레임워크로 이관 (0) | 2024.03.05 |