连续求和用户输入-JAVA



需要帮助求和连续的用户输入,直到输入0。非常接近。只需要知道我错过了什么。以下是代码

import java.util.Scanner;
public class Task3 {
public static void main(String[] args) {
while (true) {
Scanner in = new Scanner(System.in);
System.out.println("Enter a number");
int number = in.nextInt();
if (number == 0) {
System.out.println("Okay thanks!");
break;
} else {
System.out.println("The current answer is :" + number);
}
}
}
}

解决代码中的以下问题:

  1. 决不能在循环中实例化Scanner
  2. 您需要一个变量,例如sum来存储数字的运行总和

按如下操作:

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int sum = 0;
while (true) {
System.out.print("Enter a number (0 to quit): ");
int number = in.nextInt();
if (number == 0) {
System.out.println("Okay thanks!");
break;
}
sum += number;
}
System.out.println("Sum of numbers = " + sum);
}
}

样本运行:

Enter a number (0 to quit): 10
Enter a number (0 to quit): 20
Enter a number (0 to quit): 30
Enter a number (0 to quit): 0
Okay thanks!
Sum of numbers = 60

在输入数字时声明变量和和。下面的代码和内联注释可能会有所帮助。

import java.util.Scanner;
public class Task3 {
public static void main(String[] args) {
int sum=0;
Scanner in = new Scanner(System.in);
int number;
while (true) {          
System.out.println("Enter a number");
number= in.nextInt();
if (number == 0) {
System.out.println("Okay thanks!");
break;
} else {
sum=sum+number;
System.out.println("The current answer is :" + sum);
}
}
}
}

更多优化代码:导入java.util.Scanner;

public class Task3 {
public static void main(String[] args) {
int sum = 0, number = 0;
Scanner in = new Scanner(System.in);
do {
System.out.println("Enter a number");
number = in.nextInt();
sum = sum + number;
} while (number != 0);
System.out.println("The current answer is :" + sum);
}
} 

最新更新