3 回答

TA貢獻(xiàn)1886條經(jīng)驗 獲得超2個贊
您需要在乘以 2 后更新數(shù)字:
newNumber = newNumber * 2;
System.out.println(newNumber);
此外,您正在使用newNumberandtestNumber并且newNumber似乎沒有在任何地方定義...
}while( ***testNumber***newNumber*** < 1000000);
您需要選擇一個,因為如果您正在更新newNumber但testNumber在循環(huán)中進(jìn)行比較,您將創(chuàng)建一個無限循環(huán)。
您展示的代碼不應(yīng)編譯,除非您在帖子中遺漏了一些內(nèi)容。

TA貢獻(xiàn)1911條經(jīng)驗 獲得超7個贊
您也可以為它創(chuàng)建一個遞歸方法。
public int reachMillion(int num) {
if(num<=0)
return -1; // indicating it is not possible.
if(num>=1000000) // Base Condition denoting we have reached 1 million
return num;
return reachMillion(num*2); // recursive part to multiply by 2 until we reach 1 million
}
添加回答
舉報