题目:
酒馆做活动,1块钱喝一瓶啤酒,2个空瓶可以兑换一瓶啤酒,4个瓶盖可以兑换一瓶啤酒。如果有15块钱,最多可以喝多少瓶啤酒? 写个程序来计算,输入n元钱,输出可以喝多少瓶酒的数量(不允许借用)
total = 0 # 最终喝多少 left_bottle = 0 # 剩余的瓶子 left_cap = 0 # 剩余的盖子 def cal_num(bottle, bottle_gaizi): global total, left_bottle, left_cap beers = 0 # 瓶子,盖 换酒 jiu_gai, yu_gai = divmod(bottle_gaizi, 4) jiu_ping, yu_jiu_ping = divmod(bottle, 2) beers += (jiu_ping + jiu_gai) total += beers bottle_gaizi = yu_gai + beers # 剩余的盖子+ 啤酒 bottle = yu_jiu_ping + beers # 剩余的瓶子+ 啤酒 if bottle_gaizi // 4 > 0 or bottle // 2 > 0: cal_num(bottle, bottle_gaizi) else: left_bottle = bottle left_cap = bottle_gaizi if __name__ == '__main__': money = 15 total, left_bottle, left_cap = money // 1, money // 1, money // 1 cal_num(left_bottle, left_cap) print(total, left_bottle, left_cap)