1.使用循环输出等腰三角形 例如给定 输出如下结果
   *
  ***
 *****
*******
解题思路:先找出行和列的关系:
行  1  2   3   4 行
列  1  3    5   7  正好是(行*2-1)
空格是第一行  3  第二行 2  第三行 1 第四行 0  用(行数-1)
 
for i in range(1,5):
    for j in range(1,5-i):
        print(" ",end="")
    for m in range(1,2*i):
        print("*",end="")
    print()

 2.数字转人民币的读法

例如输入浮点数:123478.09  转成人民币读法:壹十贰万叁仟肆佰柒十捌点零玖

解题思路:

分开处理整数部分和小数部分 小数部分的处理比较简单,直接截断保留 位数字,转换
成几角几分的字符串。整数部分的处理则稍微复杂 点,但只要认真分析不难发现,中国的数字习
惯是 节的,一个 位的数字可被转成几千几百几十几,至于后面添加什么单位则不确定,如
果这节 位数字出现在 ,则后面添加单位“ 飞如果这节 数字出现在 位,则后面
添加单位“万”:如果这节 位数 出现在 12 位,则后面添加单位“亿”:多于 12 位就暂不考
虑了。

def divide(num):
    integer = int(num)
    fraction = round((num - integer)*100)
    return(str(integer),str(fraction))

han_list= ["","","","","","","","","",""]
unit_list = ["","",""]

def four_to_hanstr(num_str):
    result = ""
    num_len = len(num_str)
    for i in range(num_len):
        num = int(num_str[i])
        if i!=num_len - 1 and num!= 0:
            result +=han_list[num]+unit_list[num_len-2-i]
        elif num==0:
            if result.find("")==-1:
                result+=""
        else:
            result+=han_list[num]
    if result.endswith(""):
        return  result.replace(""," ")
    else:
        return result

"""
将数字字符串转成汉字字符串,num_str是需要被转换的数字字符串
"""
def integer_to_str(num_str):
    str_len = len(num_str)
    if str_len > 12:
        print("数字太大了,翻译不了")
        return
    elif str_len > 8:
        return four_to_hanstr(num_str[:-8])+"亿"+four_to_hanstr(num_str[-8:-4])+""+four_to_hanstr(num_str[-4:])
    elif str_len > 4:
        return four_to_hanstr(num_str[:-4])+""+four_to_hanstr(num_str[-4:])
    else:
        return four_to_hanstr(num_str)

def decimal_to_str(num_str):
    try:
        num_str=str(num_str)
    except Exception as e:
        print("转换错误,不能转换成字符串")
    result=""
    num_len=len(num_str)
    if num_len==1:
        num = int(num_str[0])
        result+=""+han_list[num]
    else:
        for i in range(num_len):
            num=int(num_str[i])
            result+=han_list[num]
    return result


num=0.0
try:
    num=float(input("请输入一个浮点数:"))
except Exception as e:
    print("输入的不是浮点数,请重新输入")
integer,fraction = divide(num)
print(integer)
print(fraction)
print(integer_to_str(integer)+decimal_to_str(fraction))

 

 
 
 
 

原文地址:http://www.cnblogs.com/lijiabiao/p/16387649.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性