getRandomInteger(5)
とすると 0 から 5 までのランダムな整数値を返すとします。
return Math.floor(Math.random() * (0 + 1) ;
の時
偶然以下のように生成されたとします。
0 : 0.1 * 1 n = 0
1 : 0.2 * 1 n = 0
2 : 0.3 * 1 n = 0
3 : 0.4 * 1 n = 0
4 : 0.5 * 1 n = 0
5 : 0.6 * 1 n = 0
6 : 0:7 * 1 n = 0
7 : 0.8 * 1 n = 0
8 : 0.9 * 1 n = 0
9 : 0.9 * 1 n = 0
返り値はすべて 0。
Math.random() * (1 + 1);
の時偶然以下のように生成されたとします。
0 : 0.1 * 2 n = 0
1 : 0.2 * 2 n = 0
2 : 0.3 * 2 n = 0
3 : 0.4 * 2 n = 0
4 : 0.5 * 2 n = 1
5 : 0.6 * 2 n = 1
6 : 0:7 * 2 n = 1
7 : 0.8 * 2 n = 1
8 : 0.9 * 2 n = 1
9 : 0.9 * 2 n = 1
Math.random() * (2 + 1);
の時偶然以下のように生成されたとします。
0 : 0.1 * 3 n = 0
1 : 0.2 * 3 n = 0
2 : 0.3 * 3 n = 0
3 : 0.4 * 3 n = 1
4 : 0.5 * 3 n = 1
5 : 0.6 * 3 n = 1
6 : 0:7 * 3 n = 2
7 : 0.8 * 3 n = 2
8 : 0.9 * 3 n = 2
9 : 0.9 * 3 n = 2
Math.random() * (3 + 1);
の時偶然以下のように生成されたとします。
0 : 0.1 * 4 n = 0
1 : 0.2 * 4 n = 0
2 : 0.3 * 4 n = 0
3 : 0.4 * 4 n = 1
4 : 0.5 * 4 n = 1
5 : 0.6 * 4 n = 1
6 : 0:7 * 4 n = 2
7 : 0.8 * 4 n = 2
8 : 0.9 * 4 n = 2
9 : 0.9 * 4 n = 2
Math.random() * (4 + 1);
の時偶然以下のように生成されたとします。
0 : 0.1 * 5 n = 0
1 : 0.2 * 5 n = 1
2 : 0.3 * 5 n = 1
3 : 0.4 * 5 n = 2
4 : 0.5 * 5 n = 2
5 : 0.6 * 5 n = 3
6 : 0:7 * 5 n = 3
7 : 0.8 * 5 n = 4
8 : 0.9 * 5 n = 4
9 : 0.9 * 5 n = 4
Math.random() * (5 + 1);
の時偶然以下のように生成されたとします。
0 : 0.1 * 6 n = 0
1 : 0.2 * 6 n = 1
2 : 0.3 * 6 n = 1
3 : 0.4 * 6 n = 2
4 : 0.5 * 6 n = 3
5 : 0.6 * 6 n = 3
6 : 0:7 * 6 n = 4
7 : 0.8 * 6 n = 4
8 : 0.9 * 6 n = 5
9 : 0.9 * 6 n = 5
返り値 0 は 22 個と圧倒的に 0 の割合が多くなります。
それに比べて返り値 5 は 2 個であり、
サイコロの目の出る確率 1/6 とはかけ離れた数値になるように思うのですが、
この考え方のどこに間違いがあるのでしょうか。
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?