JavaScript 1から9までの自然数をランダムで出力する
JavaScript記述時に、1から9までの自然数が必要となった。
迷ったので、念のため試してみた。
結論は、
Math.floor(Math.random()*9)+1
が正解であった。
まとめると以下のとおり。
Math.floor(Math.random()*9)+1:1〜9
Math.floor(Math.random()*9):0〜8
Math.floor(Math.random()*10)+1:1〜10
Math.floor(Math.random()*10):0〜9
以下は出力結果である。(各15個程度出力)
var i=Math.random();
console.log(i);
0.5875991797074676
0.32728011161088943
0.30932005075737834
0.383993118070066
0.37381656537763774
0.31037508975714445
0.9615578223019838
0.4850213855970651
0.5555686550214887
0.8442806997336447
0.6388768241740763
0.7833450806792825
0.6950439556967467
0.9969889421481639
0.8213641117326915
0.40059260721318424
0.14299040380865335
0.9739646415691823
0.9985122727230191
0.911581213353201
var i=Math.random();
var j=Math.floor(i*10)
console.log(j);
8
8
4
2
5
2
3
3
2
0
7
2
2
0
1
5
7
7
5
3
6
0
2
5
9
7
6
8
3
3
var i=Math.random();
var k=Math.floor(i*9)
console.log(k);
2
0
6
3
1
1
8
4
5
4
1
5
5
6
6
6
7
8
1
1
3
var i=Math.random();
var l=Math.floor(i*10)+1
console.log(l);
8
1
2
3
3
1
5
5
4
10
9
1
10
6
10
1
10
7
1
4
10
3
5
3
5
7
2
8
10
6
3
2
4
6
8
8
8
4
7
5
8
var i=Math.random();
var m=Math.floor(i*9)+1
console.log(m);
8
3
5
3
4
2
9
4
9
7
9
1
3
2
6
7
6
5
5
7
6
4
3
5