只要用戶輸入的數字大於以前的數字,我想從java讀取用戶的所有數字。但我可以只寫正數。如果包含所有數字,我如何修復下面的代碼。如果可能的話,請爲初學者編寫解決方案,因爲它是我大學計算機科學的第一年,而且我還沒學到很多東西。如何修復遞增的訂單求和碼?
import acm.program.*;
public class IncreasingOrder extends ConsoleProgram {
public void run() {
int previousNumber = 0;
int total = 0;
int count = 0;
while(true) {
int n = readInt("Enter > ");
if (n <= previousNumber) break;
total += n;
count++;
previousNumber = n;
}
println("You have entered " + count + " numbers in increasing order.");
println("Sum of these " + count + " numbers is " + total + ".");
}
}
當處理負數時,您將在第一次迭代中將負數與'previousNumber'的值'0'進行比較,從而導致循環中斷。您必須用整數可以得到的最小值初始化'previousNumber',即'Integer.MIN_VALUE' –