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

+ Recent posts