首页 > 解决方案 > 在不循环的情况下查找 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);

}

标签: javasum

解决方案


这是一个例子:

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

推荐阅读