java - 在不循环的情况下查找 5 个正整数(一个输入)的总和
问题描述
我该怎么做,它只提示一个数字?不是 5 个单独数字的输入?我不能循环(我们只在第 2 章上学),尽管我知道使用它更合乎逻辑:
任务是只使用 % 或 / 来找到 5 位整数的总和
/* while( Number > 0) {
Remainder = Number % 10;
Sum = Sum + Remainder;
Number = Number / 10;
System.out.format("sum: "+ Sum);
*/
也有人可以用外行的方式解释模数和/得到总和。谢谢你!
//Scanner is in the java.util package
import java.util.Scanner; //import class
public class SumOf5Digits {
private static Scanner input;
public static void main(String[] args) {
input = new Scanner(System.in);
System.out.print("Enter a 5-digit positive integer: ");
int Number1, Remainder1;
int Number2, Remainder2;
int Number3, Remainder3;
int Number4, Remainder4;
int Number5, Remainder5;
int Sum = 0;
Number1 = input.nextInt();
Number2 = input.nextInt();
Number3 = input.nextInt();
Number4 = input.nextInt();
Number5 = input.nextInt();
Remainder1 = Number1 % 10;
Number1 = Number1 /10;
Remainder2 = Number2 % 10;
Number2 = Number2 /10;
Remainder3 = Number3 % 10;
Number3 = Number3 /10;
Remainder4 = Number4 % 10;
Number4 = Number4 /10;
Remainder5 = Number5 % 10;
Number5 = Number5 /10;
Sum = Sum + (Remainder1 + Remainder2 + Remainder3 + Remainder4 +
Remainder5);
System.out.format ("sum:" + Sum);
}
解决方案
这是一个例子:
import java.util.Scanner; //import class
public class SumOf5Digits {
public static void main(String[] args) {
// Read integer
Scanner input = new Scanner(System.in);
System.out.print("Enter a 5-digit positive integer: ");
int number = input.nextInt();
// Compute sum of up to five base-10 digits in the number
int sum = 0;
if (number > 99999) {
System.out.println("WARNING: " + number + " has more than five base-10 digits");
} else {
int digit = number % 10; System.out.println("digit[0]=" + digit);
sum += digit;
digit = (number/10) % 10; System.out.println("digit[1]=" + digit);
sum += digit;
digit = (number/100) % 10; System.out.println("digit[2]=" + digit);
sum += digit;
digit = (number/1000) % 10; System.out.println("digit[3]=" + digit);
sum += digit;
digit = (number/10000) % 10; System.out.println("digit[4]=" + digit);
sum += digit;
}
// Print sum
System.out.println("Sum=" + sum);
}
}
示例输出:
Enter a 5-digit positive integer: 22222
digit[0]=2
digit[1]=2
digit[2]=2
digit[3]=2
digit[4]=2
Sum=10
推荐阅读
- memory-leaks - 解释数量惊人的计时器并找到它们的起源
- json - 将 JSON 数组读入 Ruby 中的数组
- wordpress - Docker WordPress 配置无法在端口 8000 的 localhost 上运行
- saml-2.0 - 尝试 SP 启动的工作流时从 samltest.id 获取 400
- r - 尝试基于两个公共列合并 R 中的多个 tsv 文件
- ruby-on-rails - NoMethodError:在单元测试中使用 shoulda-matchers 时未定义的测试方法“belong_to”
- c - 如何从字符串数组中“删除”一个元素
- python - 第一次射击被第二次射击叠加或在第二次射击后消失等等
- mysql - MySQL 为几何查询编写高效的程序
- java - 使用扫描仪将字符串输入从文件拆分为数组