2016-11-17 135 views
-1

有沒有簡單的方法將這三個循環合成一個?然後將它們更改爲「while循環」,同時保持相同的功能?結合for循環,更改爲「while循環」,保持功能

我試圖將數據轉換成這樣:

{ run = true; counter = 1; while (run == true) /* or while (run) */ {document.write (counter); 
counter++; if (counter > 3) run = false; } // end loop /* How many times will this loop go? */ } 

但只得到一個空白頁。

這裏是原始的「for循環」代碼;

//numbers divisible by 5 
for (i=1; i<=50; i++) { 
if (i%5 == 0) document.write ("number divisible by five is: " + i + "<br />") ; 
} //for 
document.write ("========================<br />"); //seperator 

//numbers divisible by 7 
for (i=1; i<=50; i++) { 
if (i%7==0) && (i%2!=0)) document.write ("number divisible by seven is: " + i + "<br />") ; 
} //for 
document.write ("========================<br />"); //seperator 

//numbers divisible by 9 
for (i=1; i<=50; i++) { 
if (i%9==0) && (i%2==0)) document.write ("number divisible by nine is: " + i + "<br />") ; 
} //for 
document.write ("========================<br />"); //seperator 
+1

爲您正在使用的語言添加標籤。另外寫你已經嘗試過/你得到的錯誤。 –

+0

你可以把第二個和thors循環的代碼放到第一個。我不確定通過將循環更改爲while循環的想法是什麼 – adi9090

+0

爲什麼要刪除/保留7和9的偶數? –

回答

0

如果你想在循環結合起來,把三個if語句爲從1到50

一個單迴路要轉換的for循環while循環,直接翻譯過來的樣子所以

i = 1; // variable 
while (i<=50) { // condition 
    if (i%5 == 0) document.write ("number divisible by five is: " + i + "<br />") ; 
    // more if statements 
    i++; // increment 
} 
0

也許試試這個?

var divisions = { 
    five: [], 
    seven:[], 
    nine: [] 
}; 

for(i = 1; i <= 50; i ++;){ 
    if(i % 5 == 0) divisions.five.push(i); 
    if((i % 7 == 0) && (i % 2 != 0)) divisions.seven.push(i); 
    if((i % 9 == 0) && (i % 2 == 0)) divisions.nine.push(i); 
} 

divisions.five.forEach(function(number){ 
    document.write('number divisible by 5 is:' + number); 
}); 

document.write ("========================<br />"); //seperator 

divisions.seven.forEach(function(number){ 
    document.write('number divisible by 7 is:' + number); 
}); 

document.write ("========================<br />"); //seperator 

divisions.nine.forEach(function(number){ 
    document.write('number divisible by 9 is:' + number); 
}); 

document.write ("========================<br />"); //seperator 

我沒有測試過這一點,寫在文本框中這裏,你應該得到的總體思路。