2016-09-28 98 views
-7

我想知道爲什麼這是一個無限循環。使用while語句造成無限循環錯誤

該腳本如下:

x=1; 
    while x<5; 
    x=2; 
    x=x+2; 
    if x==4; 
     x=x-1; 
    end 
    end 
+5

爲什麼這被標記爲C++? – EJoshuaS

+3

爲什麼它在這裏?使用鉛筆和紙,並自己解決! –

+0

我對語法有些不熟悉,但是看起來他們在每次迭代時都將x設置爲2,如果x達到4,他們減1,所以顯然x不可能達到5。事實上,如果我正在閱讀這個正確的x在每次迭代結束時應該包含3(如果我錯了,請糾正我)。 – EJoshuaS

回答

0

通過這個步驟,看看爲什麼x將始終小於5:

x=1; 
while x<5; 
    x=2; // You set x to 2 at the beginning of every single iteration 
    x=x+2; // At this point, x == 4 
    if x==4; // The "if" is unnecessary - of COURSE x == 4 - how could it possibly be anything else? 
    x=x-1; // x now contains 3 
    end 
end 

在每次迭代,然後,X ==開始2.在迭代結束時,x == 3.

+0

謝謝EJoshuaS –