728x90
식당, 카페, 미용실 등과 같이 예약 제도를 운영하는 업소에서 사용할 수 있는 예약 변경 프로그램 알고리즘을 파이썬으로 구현해 보았다.
#예약 변경 프로그램
reserved_days = [2, 4, 7, 16, 21, 23, 27, 30] #이미 예약이 완료된 날짜 리스트
while True:
original = int(input('기존에 예약한 날짜를 입력하세요: ')) #기존에 예약한 날짜 입력받기
if original in reserved_days:
break #입력받은 날짜가 예약 완료 날짜 리스트에 포함된게 확인되면 반복문 종료
else:
print('예약이 존재하지 않습니다.') #입력받은 날짜가 예약 완료 날짜 리스트에 포함되지 않으면 다시 입력받기
for day in reserved_days:
new = int(input('새로 예약을 원하시는 날짜를 입력하세요: ')) #새로 예약을 원하는 날짜 입력받기
if new not in reserved_days:
print('예약이 변경되었습니다.')
break #입력받은 날짜가 예약 완료 날짜 리스트와 겹치지 않으면 예약 변경 완료
else:
print('해당 날짜에는 이미 예약이 존재합니다. 다른 날짜를 선택해주세요.')
continue #입력받은 날짜가 예약 완료 날짜 리스트와 겹치면 다시 입력받기
reserved_days.append(new) #예약 완료 날짜 리스트에 새로운 예약 날짜 추가
reserved_days.remove(original) #예약 완료 날짜 리스트에서 기존 예약 날짜 제거
reserved_days.sort() #예약 날짜 리스트 오름차순 정렬
print(f'예약 완료된 날짜는 {reserved_days}입니다') #최종 예약 날짜 리스트 출력
728x90