2017-01-09 11 views
-4
var i = 1;            //simple varibles with value 
var value1 = 2700; 
var value2 = 2550; 

var constant1 = value1; 
var constant2 = value2; 

while (value2 <= value1) {        //condition 
value1 = parseFloat(value1) + parseFloat(constant1); 
value2 = parseFloat(value2) + parseFloat(constant2); 
i = parseFloat(i) + 1; 
    if (value2 >= value1) { 
    break;} 
} 
document.getElementById('n').value = i; 

をstuckkedながら、単純なループが実行されていないプログラムの開発および出力が空白である(無限ループのために行く)シンプルなJavaScriptのプログラムとの条件が

私はループ VALUE1 = parseFloatは(値1)+ parseFloatはを実行したいです(定数1)。value2 = parseFloat(value2)+ parseFloat(constant2);i = parseFloat(i)+ 1; 値2は値1

+0

に変換し、あなたの質問は何ですか?何をしようとしていますか?詳細情報を追加 –

+6

'value2'は常に' value1'よりも小さくなります。つまり、ループは終了しません。 'value1'を* 2 *と' value2'を* 1 *と等しくすると想像すれば、最初の反復で 'value1'は* 4 *に変わり、' value2'は* 2 *に変わります。 2回目の反復では、 'value1'は* 8 *に変更され、' value2'は* 4 *などに変更されます。 –

+1

これらの 'parseFloat'はすべて不要です。 – JJJ

答えて

-1

未満ままあなたは常に自分自身にvalue1value2を追加しているので、常にvalue2 < value1になります。

あなたのコードは

var value1 = 2700; 
var value2 = 2550; 
var i = 1; 

while (true) { 
    value1 += value1; 
    value2 += value2; 
    i++; 

    if (false) { 
     break; 
    } 
} 

document.getElementById('n').value = i;