Python写的一个按面值找零钱的程序,按照我们正常的思维逻辑从大面值到小面值的找零方法,人民币面值有100元,50元,20元,10元,5元,1元,5角,1角,而程序也相应的设置了这些面值。只需要调用函数时传入您想要找零的金额,程序会自动算各个面值的钱应该找多少张。如传入50元,则系统自动算出找零50元一张面值,如果传入60块7毛,则程序自动算出该找零50元一张,10元一张,5角一张,1角两张。
# encoding=UTF-8
def zhaoqian(money):
loop=True
tmp=["总金额:"+str(money)+"元"]
# 面值列表 单位:元
cate=(
100, 50, 20, 10, 5, 1, 0.5, 0.1
)
sy=int(money*10)
while loop:
if sy==0:
loop=False
else:
for row in cate:
tmpStr = ""
jine=int(row*10)
if jine>=10:
tmpUn = "元"
else:
tmpUn = "角"
if sy>=jine and tmpStr=="":
m = sy//jine
sy = sy%jine
if jine>=10:
tmpStr = str(jine//10)+tmpUn+str(m)+"张"
else:
tmpStr = str(jine)+tmpUn+str(m)+"张"
tmp.append(tmpStr)
return tmp
a=zhaoqian(88.7)
for x in a:
print x |