👉 기본적인 메뉴 선택 및 가격 차감 기능만 구현
📌 기본적인 for,if, while 문만을 사용
💎 자판기 그림 및 로직

- (자판기가) 메뉴를 보여줍니다.
- 현금을 투입합니다.
- 메뉴를 선택합니다.
- 선택한 메뉴와 가격이 일치하는 인덱스 값을 찾습니다.
- 현금을 투입한 가격과 메뉴의 인덱스가 일치하는 가격을 찾아서 해당 가격 만큼 차감합니다.
- 잔금이 남으면 , 저장되고 , 계속해서 계산을 합니다.
- 메뉴를 선택할때 '0'을 입력하게 되면 , 종료하고 거스름돈을 배출합니다.
📌 if 문으로 같은 인덱스 값을 찾아서 계산을 할 때
menus = ['물','오렌지 주스','콜라','사이다']
price = [1000,2000,3000,2500]
balance = 0
for i in range(len(menus)):
print(f'{i + 1}. {menus[i]} : {price[i]}')
while True:
try:
money = int(input('현금을 넣어주세요 : '))
balance += money
if money < 0:
print('입력이 잘못되셨습니다.')
continue
menu = input('메뉴를 입력하세요 (문자로), 0을 입력하시면 종료 : ')
if menu == '0':
print(f'종료합니다 이용해주셔서 감사합니다. 잔금은 : {balance} 입니다. ')
break
menu_idx = menus.index(menu)
select_price = price[menu_idx]
if balance < select_price:
print(f'잔액부족, 현금 반환 : {balance} ')
print('감사')
break
else:
balance -= select_price
print(f'물품 : {menu} 을 선택, 잔금 : {balance}')
continue
except ValueError:
print('입력이 잘못되었음')
📌 For 문으로 인덱스 값을 검색해서 찾아낼 때
menus = ['물','오렌지 주스','콜라','사이다']
price = [1000,2000,3000,2500]
balance = 0
for i in range(len(menus)):
print(f'{i + 1}. {menus[i]} : {price[i]}')
while True:
money = int(input('현금을 넣어주세요 : '))
select_menu = input('메뉴룰 입력해 주세요 : ')
balance += money
if select_menu == '0':
print(f'종료합니다 이용해주셔서 감사합니다. 거스름돈 잔액은 : {balance} 입니다.')
select_price = 0
for i in range(len(menus)):
if menus[i] == select_menu:
select_price = price[i]
if select_price > balance:
print('구매 가격이 충분하지 않습니다.')
elif select_price == 0:
print('입력하신 메뉴가 있지 않습니다.')
continue
else:
balance -= select_price
print(f'구매하신 제품 : {select_menu} , 해당 가격은 : {select_price} 입니다. 거스름돈은 {balance} 입니다.')
유익한 글이었습니다.