Java 跳过输入的第一个值
我想写一个程序,读取用户输入的一组值。然后我要打印最小值、最大值、总和和平均值。见下文:Java 跳过输入的第一个值,java,Java,我想写一个程序,读取用户输入的一组值。然后我要打印最小值、最大值、总和和平均值。见下文: float largest = in.nextFloat(); float smallest = largest; while (inputs != -1) \\-1 is the sentinel { inputs = in.nextFloat(); if (inputs !=-1)
float largest = in.nextFloat();
float smallest = largest;
while (inputs != -1) \\-1 is the sentinel
{
inputs = in.nextFloat();
if (inputs !=-1)
{
sum = sum + inputs;
counter++;
if (inputs > largest)
{
largest = inputs;
}
if (inputs < smallest)
{
smallest = inputs;
}
}
}
float max=in.nextFloat();
浮动最小=最大;
而(输入!=-1)\\-1是哨兵
{
inputs=in.nextFloat();
如果(输入!=-1)
{
总和=总和+输入;
计数器++;
如果(输入>最大值)
{
最大=输入;
}
if(输入<最小值)
{
最小=输入;
}
}
}
这不管用。发生的情况是,对于总和,第一个输入不被计数。例如,集合12345-1的总和是14而不是15(请记住-1是哨兵)。我想我知道这是为什么,因为用户输入的第一个值将用于初始化“float max”,然后第二个值将是第一个进入“inputs”的值
然而,即使我怀疑我知道这个错误,我也不知道如何修复它。我尝试将前两行代码移动到while循环中,但这会导致很多错误,而这些错误不会导致任何结果。知道怎么做吗?代码的第一行是检索值并移动光标 您需要在循环之前初始化总和:
float largest = in.nextFloat();
float smallest = largest;
float sum = largest;
看,我怀疑我知道这个错误?@o你重复了问题中的一句话,是的。