PAT—B1002 写出这个数【Python语言】

本文介绍了一道编程题目,要求读入一个自然数并计算其各位数字之和,然后用汉语拼音形式输出该和。提供了Python代码实现,并详细解释了输入输出格式。

题干信息:

1002 写出这个数 (20)(20 分)

读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。

输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10^100^。

输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。

输入样例:

1234567890987654321123456789

输出样例:

yi san wu

Tips:

最后一个拼音需要特别处理,使其后面不带空格,确保格式符合题意。

Python语言程序:

Numstr = input()#Numstr用来保存输入的数字串
length = len(Numstr)
sum = 0
for i in range(length):
    sum = sum + eval(Numstr[i])#sum用来计算输入数字串各位数字之和
    
Sumstr = str(sum)#Sumstr用来将得到的数字之和字符串化,方便后续利用字典得到对应拼音
pinyin = {"0":"ling","1":"yi","2":"er","3":"san","4":"si","5":"wu","6":"liu","7":"qi","8":"ba","9":"jiu"}
for j in range(len(Sumstr)-1):
    print(pinyin.get(Sumstr[j]),end = " ")#输出第一位到倒数第二位,每一位后面带空格
print(pinyin.get(Sumstr[-1]))#最后一位单独输出,确保输出之后没有空格

图片版本:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值