PAT1002. 写出这个数;java实现

来源:互联网 发布:电脑网络维修常识 编辑:程序博客网 时间:2024/05/13 06:21

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

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

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

输入样例:
1234567890987654321123456789
输出样例:
yi san wu
java实现
import java.util.HashMap;import java.util.Map;import java.util.Scanner;public class Test_1002 {public static void main(String[] args) {Map<Character, String> m = new HashMap<>();m.put('0', "ling");m.put('1', "yi");m.put('2', "er");m.put('3', "san");m.put('4', "si");m.put('5', "wu");m.put('6', "liu");m.put('7', "qi");m.put('8', "ba");m.put('9', "jiu");Scanner scan = new Scanner(System.in);String str = scan.next();char[] ch = str.toCharArray();int sum = 0;for(char chi:ch){sum = sum+Integer.parseInt(String.valueOf(chi));}char[] ch1 = String.valueOf(sum).toCharArray();StringBuffer str1 = new StringBuffer();for(char chii:ch1){str1.append(" ");str1.append(m.get(chii));}//System.out.println(str1.toString());System.out.print(str1.toString().trim());}}


0 0