Java 使用while循环在程序中输入数字

Java 使用while循环在程序中输入数字,java,if-statement,input,while-loop,Java,If Statement,Input,While Loop,我是一个Java初学者,有人能告诉我总共是11个吗 问题-用户已准备好逐个输入这些数字,直到程序停止: 47589341535 显示的总数是多少 int number; int total = 0; System.out.print("Enter a number"); number = input.nextInt(); while (number != 1) { if (number < 5) total = total + number; System.out.print("Enter

我是一个Java初学者,有人能告诉我总共是11个吗

问题-用户已准备好逐个输入这些数字,直到程序停止: 47589341535

显示的总数是多少

int number;
int total = 0;
System.out.print("Enter a number");
number = input.nextInt();
while (number != 1)
{
if (number < 5) total = total + number;
System.out.print("Enter a number");
number = input.nextInt();
}
System.out.println(total);
整数;
int-total=0;
系统输出打印(“输入数字”);
number=input.nextInt();
while(数字!=1)
{
如果(数量<5)总数=总数+数量;
系统输出打印(“输入数字”);
number=input.nextInt();
}
系统输出打印项次(总计);

您的while循环将一直运行,直到得到1作为输入

while (number != 1)
在while循环中,您有一个if子句,当输入的数字小于5时,它会将您的输入添加到total中

if (number < 5) total = total + number;
if (number < 5) total = total + number;
如果(数量<5)总数=总数+数量;

这就是为什么只添加4,3,4和total=11

您正在输入的
4 7 5 8 9 3 4 1 5 3 5

以下代码仅允许接受
4 7 5 8 9 3 4
,因为当输入
1
时,它会从循环中断

while (number != 1)
{
...
}
以下代码中的“更多”仅添加
4 3 4
,因为该数字应小于5

if (number < 5) total = total + number;
if (number < 5) total = total + number;
如果(数量<5)总数=总数+数量;

因此,您将得到4+3+4=11,而循环将一直运行,直到用户输入1。 如果输入的数字小于5,则这些数字将相加。 因此,从用户输入的内容来看,它将是4+3+4=11。值为1时,while循环将退出。

int number;
int number;
int total = 0;
System.out.print("Enter a number");
number = input.nextInt();
while (number != 1)
{
if (number < 5) total = total + number;

// only adds 4 3 4 because number should be less than 5

System.out.print("Enter a number");
number = input.nextInt();
}
System.out.println(total);

// Because of that you can: 4+3+4 = 11
int-total=0; 系统输出打印(“输入数字”); number=input.nextInt(); while(数字!=1) { 如果(数量<5)总数=总数+数量; //仅添加4 3 4,因为数字应小于5 系统输出打印(“输入数字”); number=input.nextInt(); } 系统输出打印项次(总计); //因此,你可以:4+3+4=11
您的输入是4 7 5 8 9 3 4 1 5 3 5

下面给出了您的代码段及其注释:

int number;
int total = 0;
System.out.print("Enter a number");
number = input.nextInt(); // your first input number ie. 4 is taken as input
while (number != 1) // while starts because 4 > 1
{
if (number < 5) total = total + number; 
System.out.print("Enter a number");
number = input.nextInt();

 /* in while loop only 4,3,4 will be added to the total because you have **if (number < 5) total = total + number;**  loop will break after taking input 1 because of  **while (number != 1)**. At that time total will be equal to 11. */

}
System.out.println(total); // outside loop value of total = 11 will be printed
整数;
int-total=0;
系统输出打印(“输入数字”);
number=input.nextInt();//您的第一个输入号码即4作为输入
while(number!=1)//while由于4>1而启动
{
如果(数量<5)总数=总数+数量;
系统输出打印(“输入数字”);
number=input.nextInt();
/*在while循环中,只有4,3,4将被添加到总数中,因为您有**if(number<5)total=total+number;**由于**while(number!=1)**,在获取输入1后,循环将中断。此时,总数将等于11*/
}
系统输出打印项次(总计);//将打印总计=11的外循环值

我将逐步解释

步骤-1:

您已经声明了两个整数变量。一个用于保存输入,另一个用于保存计算后的总值。整数
total
初始化为0。代码的以下部分正在执行此操作:

int number;
int total = 0;
步骤-2:

现在您正在提供输入值。然后输入值进入while循环。除非输入值为1,否则while循环将继续执行。您的第一个输入是4,4=1,因此,它进入循环

System.out.print("Enter a number");
number = input.nextInt();
while (number != 1)
{
步骤-3:

现在,在循环中,检查输入值是否小于5。如果小于5,则
total
值将增加到
total+number
。否则,
total
保持不变。无论if条件如何,只要不是1,系统将继续提示您提供
number
输入。以下代码执行此操作:

  if (number < 5) total = total + number;
  System.out.print("Enter a number");
  number = input.nextInt();
}
p.s.


如果您理解我的解决方案,您的下一个任务将是使用
for loop
执行完全相同的操作