我試圖從一系列雙打中獲得最小值和最大值。最大值工作正常,但最小值似乎總是為零。獲得最低價(jià)值的最佳方法是什么?請注意,我不能在本練習(xí)中使用for循環(huán),而是使用while循環(huán)。public class LoopingFloats {
public static void main(String[] args) {
double[] inputHolder = new double[5];
int inputCounter = 0;
double total = 0.0d;
double average = 0.0d;
double maximum = 0.0d;
double minimum = inputHolder[inputCounter];
double interestRate = 0.20d;
double interestAmount = 0.0d;
Scanner scnr = new Scanner(System.in);
while(inputCounter <= 4){
System.out.println("Enter number " + (inputCounter + 1) + ": ");
inputHolder[inputCounter] = scnr.nextDouble();
if(inputHolder[inputCounter] > maximum){
maximum = inputHolder[inputCounter];
}
if(inputHolder[inputCounter] < minimum){
minimum = inputHolder[inputCounter];
}
total = total + inputHolder[inputCounter];
inputCounter += 1;
}
}
average = total / 5;
interestAmount = total * interestRate;
System.out.println("Total: " + total);
System.out.println("Average: " + average);
System.out.println("Maximum: " + maximum);
System.out.println("Minimum: " + minimum);
System.out.println("Interest for total at 20%: " + interestAmount);
}}
3 回答

開滿天機(jī)
TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超13個(gè)贊
除了變量的初始化之外,一切似乎都沒問題minimum
。在inputHolder[inputCounter] = scnr.nextDouble();
語句后的while循環(huán)中初始化它
inputHolder[inputCounter] = scnr.nextDouble(); if (inputCounter == 0) minimum = inputHolder[inputCounter];
希望這能解決你的問題。
添加回答
舉報(bào)
0/150
提交
取消