2016-07-19 325 views
-2

我工作的while循環,我想停止,而變量是小於100.與我目前的,我的輸出停止在128 - 不知道爲什麼它打印128當最後一次輸出應該是64.任何指針?Java雖然循環

import java.util.Scanner; 

public class InsectGrowth { 
public static void main (String [] args) { 
    int numInsects = 0; 

    numInsects = 8; 

    System.out.print(numInsects + " "); 

    while (numInsects < 100) { 
    numInsects = numInsects * 2; 
    System.out.print(numInsects + " "); 
    } 

    System.out.println(); 

    return; 
    } 
} 
+1

「**停止**而變量小於100」?然後'while(numInsects> = 100)'。 –

+0

你的意思是「我想在變量小於100時運行*」。 – Mfusiki

+1

當'numInsects'是'64'時是否小於'100'?如果這是真的,循環中會發生什麼? – azurefrog

回答

0

打印的最後一個值是128,因爲你執行

numInsects = numInsects * 2; 

之前

System.out.print(numInsects + " "); 

因此循環停止時numInsects爲64,但在打印前通過2相乘,因此爲什麼你看128.

+0

完美的工作!非常感謝。 – Julia

+0

很高興幫助:)如果你接受我的答案,這個問題可以關閉。 – Tyler