Python实现 (啤酒2块钱一瓶,四个盖换一瓶,两个空瓶换一瓶,10块钱到底可以喝几瓶啤酒?)

  • Post author:
  • Post category:python


(1) 赋初始值

money=10          # 钱
beer =0           # 啤酒
cap =0            # 瓶盖
empty_bottle=0    # 空瓶

(2)定义得到一瓶啤酒的函数

'''
如果得到了一瓶啤酒 则 啤酒+1 (beer+1)
                  瓶盖+1 (cap+1)
                  空瓶+1 (empoty_bottle+1)
'''
def getbeer():
    global  money,beer,cap,empty_bottle,count
    beer+=1
    cap+=1
    empty_bottle+=1

(3)定义买啤酒的函数

'''
买了一瓶啤酒 总钱-2  
 调用 getbeer()函数  啤酒、瓶盖、空瓶数 分别+1
'''
def buy():
    global money
    money=money-2
    getbeer()

(3)定义用瓶盖换啤酒的函数

'''
4个瓶盖可以换一瓶啤酒 瓶盖(cap)的数量-4
 调用 getter()函数  
'''
def cap_exchange():
    global cap
    cap=cap-4
    getbeer()

(4) 定义用空瓶换啤酒的函数

'''
2个空瓶可以换一瓶啤酒 空瓶(empty_bottle)的数量-2
调用 getbeer()函数
'''
def empty_exchange():
    global empty_bottle
    empty_bottle=empty_bottle-2
    getbeer()

(5)主函数

if __name__=='__main__':
    while(money>=2): # 一瓶啤酒2元 每次买一瓶
        buy()        # 买啤酒
        while(cap>=4 or empty_bottle>=2): # 瓶盖数>=4 或者 空瓶数>=2 那么就可以换啤酒
            if(cap>=4):           # 瓶盖数>=4  可以换一瓶啤酒
                cap_exchange()    #  瓶盖换啤酒
            if(empty_bottle>=2):  # 空瓶数>=2 可以换一瓶啤酒
                empty_exchange()  # 空瓶换啤酒

完整代码:

money=10          # 钱
beer =0           # 啤酒
cap =0            # 瓶盖
empty_bottle=0    # 空瓶


'''
如果得到了一瓶啤酒 则 啤酒+1 (beer+1)
                  瓶盖+1 (cap+1)
                  空瓶+1 (empoty_bottle+1)
'''
def getbeer():
    global  money,beer,cap,empty_bottle,count
    beer+=1
    cap+=1
    empty_bottle+=1


'''
买了一瓶啤酒 总钱-2  
 调用 getbeer()函数  啤酒、瓶盖、空瓶数 分别+1
'''
def buy():
    global money
    money=money-2
    getbeer()

'''
4个瓶盖可以换一瓶啤酒 瓶盖(cap)的数量-4
 调用 getter()函数  
'''
def cap_exchange():
    global cap
    cap=cap-4
    getbeer()

'''
2个空瓶可以换一瓶啤酒 空瓶(empty_bottle)的数量-2
调用 getbeer()函数
'''
def empty_exchange():
    global empty_bottle
    empty_bottle=empty_bottle-2
    getbeer()

if __name__=='__main__':
    while(money>=2): # 一瓶啤酒2元 每次买一瓶
        buy()        # 买啤酒
        while(cap>=4 or empty_bottle>=2): # 瓶盖数>=4 或者 空瓶数>=2 那么就可以换啤酒
            if(cap>=4):           # 瓶盖数>=4  可以换一瓶啤酒
                cap_exchange()    #  瓶盖换啤酒
            if(empty_bottle>=2):  # 空瓶数>=2 可以换一瓶啤酒
                empty_exchange()  # 空瓶换啤酒

print(beer)
print(f'可以喝{beer}瓶啤酒')    # 每次调用getbeer()函数 获得的啤酒数就+1 那么我们可以统计 getbeer()函数调用多少次 就可以得到多少瓶啤酒 即beer值

结果如图:



版权声明:本文为m0_63272315原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。