2012-05-08 284 views
1

這是本書的問題-Java介紹Y Daniel Liang。如何將(for循環)轉換爲(do-while)循環?

問題是: - 將循環語句轉換爲while循環和do-while循環?

int sum = 0; 
for (int i = 0; i <= 7; i++) 
sum = sum + i; 

請參閱下面的代碼。以及需要進行哪些修改。其實我很困惑如何將它轉換爲DO-WHILE循環。

public class Convert_forLoop_toWhileLoop { 

    public static void main(String[] args) { 
     int sum = 0; 
     int i = 0; 
     do { 
      sum = sum + i; 
      System.out.println(sum); 
      i++; 
     } while(i <= 7); 
    } 
} 
+8

你做得很好 – MByD

+1

我與@BinyaminSharet在這裏 - 看起來100%正確的我。 – sblom

+0

這是完美的,沒有上述代碼的問題。 –

回答

-1

像這樣:

int sum = 0; 
int i = 0; 

do { 
    sum += i; 
    i++; 
} while (i <= 7); 

System.out.println("The sum of 0 thru " +i + " is:" + sum); 
+4

你的代碼和問題中顯示的代碼有什麼區別? –

+0

並不多。我在回答之前沒有證明他的情況,但是從上面的評論中我會注意到,事後我看到他的解決方案沒有問題。 – Marc

+0

感謝大家試圖解決我的小問題。許多人再次感謝。你的答案真的有幫助 –

-2

您的回答犯規支持的情況下,其中i的初始值是> =循環次數。

您需要先檢查條件。

while (i <= 7) { 
    sum+=i; 
    // at the last statement increase i 
    i++ 
} 

System.out.println(sum); 
+0

鑑於他的代碼在聲明中設置了'i = 0',並且將循環數設置爲7,所以我敢肯定你不會遇到'0> = 7'的問題。 – yshavit

+0

今天你有7個硬編碼,明天你有一個未知值的變量。 如果你不能用變量切換7,那麼它不是一個好的習慣。 – Horonchik

+0

他要求做一個do/while循環。一般來說這不是可行的。 – EJP