0

出力に6つの乱数が必要ですが、コードには4つの数字しか表示されず、数字は同じです。

var x = Math.floor(Math.random()*41);

for(var i=0; i<7; i++){
    document.write(x + "</br>");
    i++;
}

誰か助けてもらえますか?

4

5 に答える 5

4

.random()ループ内を移動する必要があります。また、i++ループから削除します。これは、によってすでに行われているためですfor()

デモ: jsFiddle

脚本:

for( var i=0; i<6; i++ ){
    var x = Math.floor(Math.random()*41);
    document.write(x + "</br>");
}
于 2013-03-01T01:23:42.453 に答える
2

フォーム内にi++は必要ありません。これは、7ではなく6であり、forループ内の乱数を計算する必要があります。

for(var i=0; i<6; i++){
    var x = Math.floor(Math.random()*41);
    document.write(x + "</br>");
}
于 2013-03-01T01:23:50.577 に答える
1

ループを開始する前にvarxに乱数を割り当てている場合、実行中は同じままです。

ループ内に配置してみてください。iをインクリメントすることについても、すでにforループで実行しているので、ループ内で実行する必要はありません。

var x = Math.floor(Math.random()*41);//place it inside the loop

for(var i=0; i<7; i++){
    document.write(x + "</br>");
    i++;//remove this
}
于 2013-03-01T01:24:47.043 に答える
1

なぜi2回インクリメントするのですか?また、すべての数値がランダムになる場合は、ループ内でMath関数を実行する必要があります。

for(var i = 0; i < 6; i++) {
    document.write(Math.floor(Math.random()*41) + "<br>");
}
于 2013-03-01T01:23:57.920 に答える
1

カウンターを2回インクリメントする必要はありません。また、random()はループ内にある必要があります。

var x = Math.floor(Math.random()*41);

for(var i=0; i<6; i++){
    document.write(x + "</br>");
    x = Math.floor(Math.random()*41);
}
于 2013-03-01T01:24:03.160 に答える