PAT 汉字表示的大写数字金额
输入一个整数金额,输出汉字表示的大写金额。假设输入的金额数为正整数,且最大为12位数字。
输入格式:
输入一个正整数,表示金额,最大位数为12。
输出格式:
输出汉字表示的大写金额。输出的时候,从第一位数字开始,后面所有的位数都需要输出,包括0(零)。
输入样例:
123456789
输出样例:
壹亿贰仟叁佰肆拾伍万陆仟柒佰捌拾玖圆
输入样例:
987600020000
输出样例:
玖仟捌佰柒拾陆亿零仟零佰零拾贰万零仟零佰零拾零圆
代码实现:
from decimal import Decimal
def num2money_format(change_number):""".转换数字为大写货币格式( format_word.__len__() - 3 + 2位小数 )change_number 支持 float, int, long, string"""format_word = ["圆","拾", "佰", "仟", "万","拾", "佰", "仟", "亿","拾", "佰", "仟", "万","拾", "佰", "仟"]format_word_decimal = ['分', '角']format_num = {'0': "零", '1': "壹", '2': "贰", '3': "叁", '4': "肆", '5': "伍", '6': "陆", '7': "柒", '8': "捌", '9': "玖"}res = [] # 存放转换结果if '.' not in change_number:# 输入的数字没有'.',为整元,没有角和分k = len(change_number) - 1for i in change_number:res.append(format_num[i])res.append(format_word[k])k = k - 1elif '.' in change_number:float_2_change_num = Decimal(float(change_number)).quantize(Decimal("0.00"))depart = str(float_2_change_num).split('.')# 将四舍五入得到的浮点数整数部分和小数部分拆开,实现操作为:先将浮点数转为字符串类型,再以“.”为分隔符分开int_part = depart[0] # 整数部分decimal_part = depart[1] # 小数部分k = len(int_part) - 1for i in int_part: # 整数部分转换res.append(format_num[i])res.append(format_word[k])k = k - 1m = len(decimal_part) - 1for i in decimal_part: # 小数部分转换res.append(format_num[i])res.append(format_word_decimal[m])m = m - 1return ''.join(res) # 返回结果
your_money = input()
result = num2money_format(your_money)
print(result)
PAT 汉字表示的大写数字金额相关推荐
- 32:汉字表示的大写数字金额
输入一个整数金额,输出汉字表示的大写金额.假设输入的金额数为正整数,且最大为12位数字. 输入格式: 输入一个正整数,表示金额,最大位数为12. 输出格式: 输出汉字表示的大写金额.输出的时候,从第一 ...
- C语言 阿拉伯数字转换为汉语大写数字金额程序分析及源码
C语言 阿拉伯数字转换为汉语大写数字金额程序分析及源码 数据结构:用一个整型变量储存输入数字 大家可能会感觉用字符串取位更方便一些·· 但是相应的,字符串失去了数字原有的意思 00100和100对 ...
- mysql数据表字段繁体转简体_【WORD】阿拉伯数字变大写数字、简繁体转换等实用小技巧...
WORD 01 阿拉伯数字秒变大写 有时候我们在做制订合同文档时,经常需要输入大写数字金额,Word中有什么快捷方法输入呢?一起来看一看! 技巧一:利用"编号" 输入阿拉伯数字,如 ...
- 数字金额转换为大写人民币汉字
// 数字金额转换为大写人民币汉字convertCurrency (money) {// 汉字的数字var cnNums = ['零', '壹', '贰', '叁', '肆', '伍', '陆', ' ...
- JS将数字金额转换为大写人民币汉字
转载自 qubernet 博客 JS将数字金额转换为大写人民币汉字 function convertCurrency(money) {//汉字的数字var cnNums = new Array('零' ...
- 【简单易懂】Java字符串应用场景:数字金额转换成大写汉字金额【金额转换】
Java字符串应用场景:数字金额转换成汉字金额 文章目录 Java字符串应用场景:数字金额转换成汉字金额 前言 一.String简单介绍 二.字符串在开发中的应用场景 三.金额转换 3.1解题思路 3 ...
- JS 实现数字转换为大写中文金额
数字转换为大写中文金额 function convertCurrency(money) { //汉字的数字 var cnNums = new Array('零', '壹', '贰', '叁', '肆' ...
- 把数字金额转换成中文大写数字
//把数字金额转换成中文大写数字 function changeNumMoneyToChinese(money) { var cnNums = new Array("零", &qu ...
- js将数字金额转换为大写人民币
今天换算律师打官司金额,用到了小写金额转化为大写汉字的问题,这里把具体思路分析一下 1.首先判断输入数值正负问题, 2.其次有小数点部分需要处理,将数值每次乘以10进行拆分,乘10--%10--结果为 ...
最新文章
- 同一服务器 数据库间 不同表 的查询
- 智能制作,是我们改变时代的机会——阿里云视频云的理想与未来
- Java基础---面向对象(OOP)
- 用systemd命令来管理linux系统
- python 修改dataframe列名的几种方法
- linux的打包和压缩
- Django面试题汇总
- 双十一,咪蒙广告位为何供不应求?
- 关于iOS获取音乐库的音乐信息 (获取本地音乐文件)
- 统计学习方法第一章:概述
- java开发工程师面试自我介绍_Java程序员自我介绍
- 端端Clouduolc的安全机制
- 大一学生关心的问题(一)
- 学习Java的第五天 | 定义方法 | 引用数据类型——类 | 访问权限-修饰符 | 全局变量与局部变量 | toString | 构造方法 | 方法重载
- HTML5+CSS3期末大作业:电影网站设计——黑色扁平的电影工作室静态网页 学生DW网页设计作业成品 web课程设计网页规划与设计 计算机毕设网页设计源码
- java对文件进行压缩的两种方法
- SOMIC E95振动设置
- 苹果新品“翻车”后,官方回应来了!
- Vscode 使用 Code Runner 输出乱码,不只中文
- Perl特殊变量(flw等翻译)
热门文章
- 一文看懂四大汽车总线:LIN、CAN、FlexRay、MOST
- linux tftp 日志,Linux实用工具-tftp
- 阿里云上利用virtiope+colinux实现linux系统盘动态无损多分区
- python海伦公式求三角形面积_python编程实战:海伦公式求取三角形的面积
- 牛客:【2021秋季算法入门班第七章习题:动态规划1】部分题解:方块与收纳盒、舔狗舔到最后一无所有、可爱の星空、[NOIP1999]拦截导弹
- 视频教程-Cocos2d-x 游戏开发详解-Cocos
- 计算机软件技术实习预习日志
- 最全的解压缩软件附下载地址
- 冬冬爬楼梯,一步可以1级,也可以爬2级、3级。冬冬很可爱,每到一处楼梯处,他都想知道直完这个楼梯有多少种走法。但由于有的时候楼梯级数太多,可能是个天文数字,很显然,对于还处于小学5年级的冬冬是不太现实
- 定向天线ADS-B地面接收机 Pentagon