嘿伙计我需要帮助完成这项任务。当我运行我拥有的东西时,它会永远循环,帮助将非常感激。这是我的任务: 在下一页上写一个程序段,从键盘读取一个整数序列,直到输入0(零)。输入时,打印每个整数(停止程序的0除外)和输入的整数的平均值。
这是我到目前为止所拥有的:
import java.util.Scanner;
public class List {
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
int boom = 0;
int sum = 0;
double average = 0;
int count = 0;
System.out.println("Enter a nonzero integer, please!");
boom = keyboard.nextInt();
while (boom != 0) {
sum += boom;
count++;
average = ((double) sum) / count;
System.out.println("The average is " + average);
}
}
}
答案 0 :(得分:0)
如果在boom=keyboard.nextInt()
阶段输入非零整数,它将永远循环。原因在于,你的时间段中的繁荣永远不会改变,停止的条件是繁荣不等于零。
您需要将循环设置为循环外的非零值,并将分配从循环内的键盘移动到int的繁荣。
答案 1 :(得分:0)
您只读取一次键盘输入。这就是你应该做的:
while (boom=keyboard.nextInt() != 0) {
sum += boom;
count++;
average = ((double)sum) / count;
System.out.println ("The average is " + average);
}