题干信息:
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]))#最后一位单独输出,确保输出之后没有空格
图片版本: