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

yipeiwu_com6年前Python基础

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

相关文章

总结Python中逻辑运算符的使用

总结Python中逻辑运算符的使用

下表列出了所有Python语言支持的逻辑运算符。假设变量a持有10和变量b持有20,则:  示例: 试试下面的例子就明白了所有的Python编程语言提供了逻辑运算符:...

python3模块smtplib实现发送邮件功能

python3模块smtplib实现发送邮件功能

本文实例为大家分享了python3 smtplib发送邮件的具体代码,供大家参考,具体内容如下 smtplib模块是smtp简单邮件传输协议客户端的实现,为了通用性,有时候发送邮件的时候...

使用Python进行中文繁简转换的实现代码

中文繁体、简体的差异,在NPL中类似英文中的大小写,但又比大小写更为复杂,比如同样为繁体字,大陆、香港和台湾又不一样。先前写过一篇中文繁简转换的文章,感觉写的不太详细,今天就针对Pyth...

python使用电子邮件模块smtplib的方法

python使用电子邮件模块smtplib的方法

Smptp类定义:smtplib.SMTP(host[,port[,local_hostname[,,timeout]]]),作为SMTP的构造函数,功能是与smtp服务器建立连接,在连...

不可错过的十本Python好书

不可错过的十本Python好书

以往的文章中小编已经给大家陆续推荐了很多的Python书籍,可以说品种齐全、本本经典了,不知道你是不是已经眼花缭乱,不知道该选择哪本好了呢?今天我来为大家分享十本不可错过的Python好...