0
嗨,大家好我有一個真正的困難時間,試圖讓這段代碼解決。我的指導線爲:要求用戶輸入數字,獲取最小/最大/平均值
- 創建一個新的Scanner對象,並把它保存到你選擇
- 的變量名聲明一個整型變量當前用戶的輸入,並把它初始化的東西,是不爲0(我們將盡管如此,將它命名爲intInput - 名稱是任意的)雖然
- 創建一個while循環,條件是intInput不等於0
- 在此循環的內部,調用Scanner的nextInt()方法對象並將其存儲到intInput中
我沒有得到任何錯誤,但它沒有按照我認爲的那樣工作。
這裏是我的代碼:
import java.util.Scanner;
// class name matches the file name
public class Lab5
{
// we must have a main method to run the program
`enter code here`public static void main(String[] args)
{
Scanner scan= new Scanner(System.in);
int userInput = 1;
int minVal = Integer.MIN_VALUE;
int maxVal = Integer.MAX_VALUE;
double average = 0;
int holdNum = 0;
double numSum = 0;
System.out.print ("Please enter numbers and to finish the program your last number should be 0: ");
numSum += userInput;
holdNum++;
while (userInput != 0)
{
userInput = scan.nextInt();
}
if (maxVal > Integer.MAX_VALUE)
{
maxVal = userInput;
}
if (minVal < Integer.MIN_VALUE)
{
minVal = userInput;
}
average = (numSum)/(holdNum);
System.out.println("Average = " + average);
System.out.println("Max = " + maxVal);
System.out.println("Minimum = " + minVal);
}
}
對不起,我發佈後,我睡着了。謝謝(你的)信息 。我將總和和遞增移動到我的印刷品的正下方,告訴用戶該做什麼。我仍然沒有得到正確的數字。我分別輸入1,2,3,4,0。我的平均值是1.0(應該是2),最大值是2147483647,最小值是-2147483648。任何進一步的幫助將不勝感激。 –
您使用Integer.MIN_VALUE作爲初始最小值。沒有整數小於這個值,所以初始值永不改變。初始最大值也會發生同樣的情況:沒有整數大於Integer.MAX_VALUE。至於平均水平,你能否更新問題中的代碼?就目前而言,它會在循環的每次運行中打印平均值。 – Joni
對不起,有一個課程不允許筆記本電腦出來。現在我有一個免費的小時工來處理這個問題。 –