我是java的初学者并且不知道使用循环来编写程序,这些循环提示用户输入一个数字,直到用户没有输入0。 当用户输入0时,系统应在用户输入中显示MAX号
QUE 2 编写一个程序,要求用户输入一系列数字(双重类型)。数字由返回键分隔(并为每个输入提供提示)。用户输入0结束序列。然后输出所有输入数字的最大数量。下面是一个示例(斜体部分是用户的输入):请输入一个数字序列,用return分隔,然后在最后用0结束此序列:25 下一个号码:35.6 下一个号码:112.112 下一个号码:0 您输入的最大值为112.112
import java.util.Scanner;
public class Q3
{
public static void main(String[] args[])
{
double n;
// double i;
double MAX=0;
System.out.println("Please Enter the number: ");
Scanner Kb = new Scanner(System.in);
n = Kb.nextDouble();
if(n>0){
System.out.println("Please Enter the number: ");
n = Kb.nextDouble();
return;
}
else if(n==0) {
if (MAX>0){
MAX=n;
return ;
}
}
return;
}
}
答案 0 :(得分:3)
跟踪用户输入数字的最大值和每次检查是否大于最大值
-O0
由于零是终端字符,因此可以基本忽略负输入,并且max的初始值为零是可接受的。
请注意,如果用户决定为您提供无法解析为double的输入,则nextDouble可以抛出import java.util.Scanner;
public class Q3 {
public static void main(String... args) {
double max = 0;
System.out.println("Please enter the number: ");
Scanner kb = new Scanner(System.in);
double number = kb.nextDouble();
while (number != 0) {
if (max < number) {
max = number;
}
number = kb.nextDouble();
}
System.out.print("The max is " + max);
}
}
。
答案 1 :(得分:0)
List<Double> doubleList = new ArrayList<>();
System.out.println("enter a number :");
Scanner kb = new Scanner(System.in);
while (kb.hasNext() ) {
double input = kb.nextDouble();
if(input == 0){
break;
}
doubleList.add(input);
}
System.out.println("Max Value Entered : " + Collections.max(doubleList));