PAT 1002 写出这个数 (20) (Basic Level)
2013-05-20 22:36
471 查看
题目:读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。输入样例:
输出样例:
1234567890987654321123456789
输出样例:
yi san wu 题目较简单,也不用判断输入的格式是否正确。代码如下(java):
import java.io.*; import java.util.*; public class Main { public static void main(String args[]){ Scanner cin = new Scanner(System.in); while(cin.hasNext()){ String inputString = cin.next(); int sum = 0; for(int i = 0;i < inputString.length();i++){ sum += Integer.parseInt(inputString.substring(i, i+1)); } System.out.println(toString(sum)); } } public static String toString(int n){ String output = new String(); String s = Integer.toString(n); for(int i = 0;i < s.length();i++){ if('0' == s.charAt(i) && i != 0) output += " " + "ling"; else if('1' == s.charAt(i)){ if(0 == i) output += "yi"; else output += " " + "yi"; } else if('2' == s.charAt(i)){ if(0 == i) output += "er"; else output += " " + "er"; } else if('3' == s.charAt(i)){ if(0 == i) output += "san"; else output += " " + "san"; } else if('4' == s.charAt(i)){ if(0 == i) output += "si"; else output += " " + "si"; } else if('5' == s.charAt(i)){ if(0 == i) output += "wu"; else output += " " + "wu"; } else if('6' == s.charAt(i)){ if(0 == i) output += "liu"; else output += " " + "liu"; } else if('7' == s.charAt(i)){ if(0 == i) output += "qi"; else output += " " + "qi"; } else if('8' == s.charAt(i)){ if(0 == i) output += "ba"; else output += " " + "ba"; } else if('9' == s.charAt(i)){ if(0 == i) output += "jiu"; else output += " " + "jiu"; } } return output; } }
相关文章推荐
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20)
- PAT(Basic Level) 1002. 写出这个数 (20)
- PAT BASIC LEVEL 1002.写出这个数 (20)
- PAT Basic Level 1002. 写出这个数 (20)
- PAT (Basic Level) Practise (中文)1002 写出这个数(20)
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20)
- PAT (Basic Level) Practise (中文)---1002 写出这个数 (20)
- PAT(Basic Level) 1002.写出这个数 (20)
- PAT (Basic Level) Practise (中文)- 1002. 写出这个数 (20)
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20)(java实现)
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20)
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20) C语言
- PAT (Basic Level) 1002. 写出这个数 (20)
- PAT (Basic Level)1002. 写出这个数 (20)
- PAT Basic 1002. 写出这个数 (20)(C语言实现)
- Pat(Basic Level)Practice--1002(写出这个数)
- PAT(basic level) 1002 写出这个数
- PAT(Basic Level)_1002_写出这个数
- 写出这个数 (20),PAT(Basic Level) Practise NO.1002
- PAT (Basic Level) Practise (中文)1002.写出这个数