Quiz) 동네에 항상 대기 손님이 있는 맛있는 치킨집이 있습니다.
대기 손님의 치킨 요리 시간을 줄이고자 자동 주문 시스템을 제작하였습니다.
시스템 코드를 확인하고 적절한 예외처리 구문을 넣으시오.
조건1 : 1보다 작거나 숫자가 아닌 입력값이 들어올 때는 ValueError 로 처리
출력 메세지 : "잘못된 값을 입력하였습니다."
조건2 : 대기 손님이 주문할 수 있는 총 치킨량은 10마리로 한정
치킨 소진 시 사용자 정의 에러[SoldOutError]를 발생시키고 프로그램 종료
출력 메세지 : "재고가 소진되어 더 이상 주문을 받지 않습니다."
class OrderLimit(Exception):
def __init__(self, message):
super().__init__(message)
chicken = 10 # 치킨 재고
waiting = 1 # 대기번호
while True:
try:
print(f"[남은 치킨 : {chicken}]")
order = int(input("주문할 치킨 수량을 입력해주세요: "))
if chicken == 0:
raise OrderLimit("재고가 소진되어 더 이상 주문을 받지 않습니다.")
elif order > chicken:
print("재고가 부족하여 주문이 불가합니다.")
elif order < 1:
raise ValueError
else:
chicken -= order
print(f"[주문이 접수되었습니다. 대기번호{waiting} 현재 남은 치킨: {chicken}]")
waiting += 1
except ValueError:
print("잘못된 값을 입력하셨습니다.")
except Exception as e:
print(e)
break
내가 제출한 코드
팁 : 예외 처리 블록에서 프로그램 종료 조건을 만족할 경우에는 while문을 종료시켜 주기 위해 break문을 써주는 것을 잊지말기
문제 출처 - 나도코딩
'코딩테스트' 카테고리의 다른 글
정올 1291 : 구구단 [Python] (0) | 2023.03.28 |
---|---|
간단 퀴즈 - 택시 승객 시간별 매칭 (0) | 2023.03.25 |
코딩 퀴즈 - 부동산 프로그램 (1) | 2023.03.23 |
프로그래머스 - 모의고사(수포자) (0) | 2023.03.22 |
간단 코딩 퀴즈 - 표준 체중 구하는 프로그램 작성 (0) | 2023.03.22 |