#自动贩卖机:
#允许用户投币,但投币总数不能超过10块钱(币总只支持1元,5元,10元)。 如果10块以上,则直接退出贩卖机功能使用。
#贩卖机中饮料只有橙汁、椰汁、矿泉水、早餐奶,售价分别是3.5,4.2,4.5,2
#用户需要通过: 投钱和选择饮料,来使用贩卖机。
#如果饮料是没有的,则直接退出贩卖机功能使用。
#并通过判断之后,给用户吐出饮料和找零。
#请写函数实现贩卖机的功能。并调用此函数,调用时要用不同的数据来测试函数的功能是否正确实现。
# ps:不需要考虑重复投币。贩卖机只需要知道总的投币数量即可。
#一次只取一个饮料
def slot_machine():
total_money = input("自动贩卖机只支持投币1元,5元,10元,请按需投币:")
if total_money.isdigit(): #判断是否是数字
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,所选饮料不存在,无法购买,我们后期会多加改进!")
return "取回所投金额:{}".format(total_money)
return
else:
print("投币不正确,请按提示投币!")
return "取回所投金额:{}".format(total_money)
return
else:
print("投币不正确,请按提示投币!")
return
print(slot_machine())
"""
测试数据:
1、s
2、1橙汁
3、2
4、5橙汁
5、10椰汁
6、5可乐
7、12
"""