1

時間の組み合わせを作ってみました6 with 5。1から6までのように、同様にランダムに生成したいと思い7 to 12ます。私はこのように試しました13 to 1825 to 30

setInterval(function() {
  var number = 1 + Math.floor(Math.random() * 6); //i tried from 1 to 6
    $('#my_div1').text(number);
     var number = 7 + Math.floor(Math.random() * 12); // i tried from 7 to 12
    $('#my_div2').text(number);
     var number = 13 + Math.floor(Math.random() * 18); // from 13 to 18
    $('#my_div3').text(number);
     var number = 19 + Math.floor(Math.random() * 24); //from 19 to 24
    $('#my_div4').text(number);
     var number = 25 + Math.floor(Math.random() * 30);  // from 25 to 30
    $('#my_div5').text(number);
  },
1000);

最初のもの自体が次のもののために機能しているため、適切な値が得られませんでした。以前にphpでこれを試しましたrand(1,5);が、javascriptでこれを行う方法がわかりません。どんな提案も素晴らしいでしょう。

ここにフィドルがあります

4

7 に答える 7

2

ほとんど正解です。問題は、ランダムに生成された数値に全体の金額を掛けることです。そのため、7 + a random number between 1 and 12必要なときに (= 最大 19)実行7 + a random number between 1 and 6したため、数値計算の正しいコードは次のようになります。

var number = 7 + Math.floor(Math.random() * 6);
var number = 13 + Math.floor(Math.random() * 6);
var number = 19 + Math.floor(Math.random() * 6);
var number = 25 + Math.floor(Math.random() * 6);

編集: 1 から 6 または 1 から 5 の間の数値が必要かどうかわかりません。申し訳ありません。

于 2013-10-17T12:10:13.887 に答える
2

これが必要だと思います:

setInterval(function() {
  var number = 1 + Math.floor(Math.random() * 6); //i tried from 1 to 6
    $('#my_div1').text(number);
     var number = 7 + Math.floor(Math.random() * 6); // i tried from 7 to 12
    $('#my_div2').text(number);
     var number = 13 + Math.floor(Math.random() * 6); // from 13 to 18
    $('#my_div3').text(number);
     var number = 19 + Math.floor(Math.random() * 6); //from 19 to 24
    $('#my_div4').text(number);
     var number = 25 + Math.floor(Math.random() * 6);  // from 25 to 30
    $('#my_div5').text(number);
  },
1000);

フィドルを更新しました http://jsfiddle.net/bxZ9G/8/

于 2013-10-17T12:10:38.403 に答える
1
setInterval(function() {
    var number = 1 + Math.floor(Math.random() * 6); //i tried from 1 to 6
    $('#my_div1').text(number);
    var number = 7 + Math.floor(Math.random() * 6); // i tried from 7 to 12
    $('#my_div2').text(number);
    var number = 13 + Math.floor(Math.random() * 6); // from 13 to 18
    $('#my_div3').text(number);
    var number = 19 + Math.floor(Math.random() * 6); //from 19 to 24
    $('#my_div4').text(number);
    var number = 25 + Math.floor(Math.random() * 6);  // from 25 to 30
    $('#my_div5').text(number);
},
1000);

0 から 5 までの乱数が必要です。それを 7,13,19,25 に追加して、必要な範囲の乱数を取得できます。

于 2013-10-17T12:14:10.283 に答える
1

あなたの計算は間違っているようです。次のように変更します。

setInterval(function() {
  var number = 1 + Math.floor(Math.random() * 6); //i tried from 1 to 6
    $('#my_div1').text(number);
     var number = 7 + Math.floor(Math.random() * 6); // i tried from 7 to 12
    $('#my_div2').text(number);
     var number = 13 + Math.floor(Math.random() * 6); // from 13 to 18
    $('#my_div3').text(number);
     var number = 19 + Math.floor(Math.random() * 6); //from 19 to 24
    $('#my_div4').text(number);
     var number = 25 + Math.floor(Math.random() * 6);  // from 25 to 30
    $('#my_div5').text(number);
  },
1000);
于 2013-10-17T12:10:04.433 に答える
1

minmaxの間の疑似乱数を生成する 1 つの方法:

function rand(min, max) {
    return Math.floor(min + (Math.random() * max));
}
于 2013-10-17T12:10:34.567 に答える
1

指定範囲の乱数の抽象式は、

Min + (int)(Math.random() * ((Max - Min) + 1))

したがって、あなたの場合、コードは次のようになります

function getRandomRange(min, max) {
    return min + Math.floor(Math.random() * ((max - min) + 1));
}
setInterval(function() {
    var number = getRandomRange(1, 6); //i tried from 1 to 6
    $('#my_div1').text(number);
    var number = getRandomRange(7, 12); // i tried from 7 to 12
    $('#my_div2').text(number);
    var number = getRandomRange(13, 18); // from 13 to 18
    $('#my_div3').text(number);
    var number = getRandomRange(19, 24); //from 19 to 24
    $('#my_div4').text(number);
    var number = getRandomRange(25, 30);  // from 25 to 30
    $('#my_div5').text(number);
}, 1000);

これが修正されたフィドルです:http://jsfiddle.net/bxZ9G/6/

于 2013-10-17T12:12:51.403 に答える