Tom数
时间限制: 1Sec 内存限制: 128MB
题目描述
正整数的各位数字之和被Tom称为Tom数。求输入数(<2^32)的Tom数!
输入
每行一个整数(<2^32).
输出
每行一个输出,对应该数的各位数之和.
样例输入
12345
56123
82
样例输出
15
17
10
提示
无
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(sc.hasNext()) {
String str = sc.next();
String arr[] = str.split("");
int sum = 0;
for(int j=0;j<str.length();j++) {
sum=sum+ Integer.parseInt(arr[j]);
}
System.out.println(sum);
}
}
}
在13行sum=sum+ Integer.parseInt(arr[j]); 报错。
Exception in thread "main" java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:503)
at java.lang.Integer.parseInt(Integer.java:526)
at Main.main(Main.java:13)
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(sc.hasNext()) {
String str = sc.next();
String arr[] = str.split("");
int sum = 0;
for(int j=0;j<str.length();j++) {
sum += Integer.valueOf(arr[j]).intValue();
}
System.out.println(sum);
}
}
}
在12行sum += Integer.valueOf(arr[j]).intValue(); 报错。
Exception in thread "main" java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:503)
at java.lang.Integer.valueOf(Integer.java:581)
at Main.main(Main.java:12)
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(sc.hasNext()) {
String str = sc.next();
String arr[] = str.split("");
char bb[]=str.toCharArray();
int sum = 0;
for(int j=0;j<str.length();j++) {
sum+=bb[j]-'0';//减‘0’字符,或者减去0的ASCII码
}
System.out.println(sum);
}
}
}
最后。终于AC了。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
int sum = 0;
String str = sc.next();
for (int i = 0; i < n.length(); i++)
sum += str.charAt(i) - '0';
System.out.println(sum);
}
}
}