佩奇去超市购买54元巧克力和53元果冻,货币面值有20、10、2、1元,按付款货币数量最少原则,佩奇总共需要付给超市多少数量哪种面值的货币,编写函数实现该算法。

def my_pay(x):
    a=[1,2,10,20]
    a.reverse()
    b=[0]*4
    for i in range(4):
        while True:
            if x>=a[i]:
                x-=a[i]
                b[i]+=1
            else:
                break
    print("20元——%s张" % b[0])    
    print("10元——%s张" % b[1])    
    print("2元——%s张"  % b[2])    
    print("1元——%s张"  % b[3])    


if __name__ == '__main__':
    print("54元:")
    my_pay(54)
    print()
    print("53元:")
    my_pay(53)

你可能感兴趣的:(python,练习大全,python)