本题目要求读入若干个代表整数的字符串,然后将其转化为整数。
如果该数>=10000且<=20000,则依次输出其对应的二进制字符串、八进制字符串、十六进制字符串。
否则将字符串中的每个数字抽取出来,然后将所有数字加总求和。
提示: 参考jdk文档的Integer,
输入样例:
123
10000
-123
314159265
输出样例:
1 2 3 6
10011100010000,23420,2710
1 2 3 6
3 1 4 1 5 9 2 6 5 36
答案
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while(scanner.hasNextInt()){
String str = scanner.nextLine();
int num = Integer.parseInt(str);
if(num >= 10000 && num <= 20000){
System.out.println(Integer.toBinaryString(num) + "," + Integer.toOctalString(num) + "," + Integer.toHexString(num));
}else {
int sum = 0;
for (int i = 0; i < str.length(); i++) {
if(str.charAt(i) == '-'){
continue;
}
System.out.print(str.charAt(i) + " ");
String s = new Character(str.charAt(i)).toString();
sum += Integer.parseInt(s);
}
System.out.println(sum);
}
}
}
}

本文介绍了一个Java程序,用于处理输入的整数字符串。程序能够根据数值范围进行不同的操作:当数值位于10000到20000之间时,输出其二进制、八进制和十六进制形式;对于其他数值,则抽取并累加字符串中的数字。
1969

被折叠的 条评论
为什么被折叠?



