#自動販賣機(jī):
#允許用戶投幣,但投幣總數(shù)不能超過10塊錢(幣總只支持1元,5元,10元)。 如果10塊以上,則直接退出販賣機(jī)功能使用。
#販賣機(jī)中飲料只有橙汁、椰汁、礦泉水、早餐奶,售價分別是3.5,4.2,4.5,2
#用戶需要通過: 投錢和選擇飲料,來使用販賣機(jī)。
#如果飲料是沒有的,則直接退出販賣機(jī)功能使用。
#并通過判斷之后,給用戶吐出飲料和找零。
#請寫函數(shù)實現(xiàn)販賣機(jī)的功能。并調(diào)用此函數(shù),調(diào)用時要用不同的數(shù)據(jù)來測試函數(shù)的功能是否正確實現(xiàn)。
# ps:不需要考慮重復(fù)投幣。販賣機(jī)只需要知道總的投幣數(shù)量即可。
#一次只取一個飲料
def slot_machine():
total_money = input("自動販賣機(jī)只支持投幣1元,5元,10元,請按需投幣:")
if total_money.isdigit():? ? #判斷是否是數(shù)字
? ? ? ? if float(total_money) in (1.0,5.0,10.0):
print("""
*******************************
slot machine
橙汁:3.5元
? ? ? ? ? ? ? ? ? ? 椰汁:4.2元
? ? ? ? ? ? ? ? ? ? 礦泉水:4.5元
? ? ? ? ? ? ? ? ? ? 早餐奶:2元
? ? ? ? ? ? ? ? *******************************
""")
drink_info = {"橙汁": 3.5, "椰汁": 4.2, "礦泉水": 4.5, "早餐奶": 2}
drink = input("請選擇需要購買的飲料:")
if total_money == "1":
print("投幣金額不足,無法購買{}".format(drink))
return "取回所投金額:{}".format(total_money)
return
if drink in drink_info.keys():
change = round(float(total_money) - drink_info[drink],1)
return "吐零:{}".format(change), drink
else:
print("Sorry,所選飲料不存在,無法購買,我們后期會多加改進(jìn)!")
return "取回所投金額:{}".format(total_money)
return
else:
print("投幣不正確,請按提示投幣!")
return "取回所投金額:{}".format(total_money)
return
else:
print("投幣不正確,請按提示投幣!")
return
print(slot_machine())
"""
測試數(shù)據(jù):
1、s
2、1橙汁
3、2
4、5橙汁
5、10椰汁
6、5可樂
7、12
"""