Heim >Backend-Entwicklung >Python-Tutorial >Python实现的一个找零钱的小程序代码分享

Python实现的一个找零钱的小程序代码分享

WBOY
WBOYOriginal
2016-06-16 08:42:323227Durchsuche

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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn