더북(TheBook)

입력값이 10 이상인지를 확인하는 if 문에서 ValueError 대신 새롭게 정의한 BigNumberError를 발생시키고, except 문을 추가해 예외 처리를 합니다.

class BigNumberError(Exception): # 사용자 정의 예외 처리, Exception 클래스 상속
    pass
try:
    print("한 자리 숫자 나누기 전용 계산기입니다.")
    num1 = int(input("첫 번째 숫자를 입력하세요 : "))
    num2 = int(input("두 번째 숫자를 입력하세요 : "))
    if num1 >= 10 or num2 >= 10: # 입력받은 수가 한 자리인지 확인
        # raise ValueError
        raise BigNumberError
    print("{0} / {1} = {2}".format(num1, num2, int(num1 / num2))) 
except ValueError:
    print("값을 잘못 입력했습니다. 한 자리 숫자만 입력하세요.")
except BigNumberError: # 사용자 정의 예외 처리
    print("오류가 발생했습니다. 한 자리 숫자만 입력하세요.")

실행결과 icon_con

한 자리 숫자 나누기 전용 계산기입니다.
첫 번째 숫자를 입력하세요 : 10
두 번째 숫자를 입력하세요 : 5
오류가 발생했습니다. 한 자리 숫자만 입력하세요.
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.