黒と白の玉
2個取り出しどちらかが黒だった場合、もう一つが黒である確率
HTML
<div id="result"></div>
JavaScript
var r;
r = test();
document.getElementById("result").innerHTML = r;
function test() {
var num_balls, trial, all, black, ct, balls, i, j, x, y, temp;
num_balls = 100; //玉の数
trial = 10000; //試行回数
all = 0; //どちらかが黒であった回数
black = 0; //もう一つが黒であった回数
for (ct = 0; ct < trial; ct++) {
//黒と白の玉を入れる
balls = [];
for (i = 0; i < num_balls / 2; i++) {
balls.push(0); //黒
balls.push(1); //白
}
//黒と白の玉を混ぜる
for (j = 0; j < 1000; j++) {
x = Math.floor(Math.random() * num_balls);
y = Math.floor(Math.random() * num_balls);
temp = balls[x];
balls[x] = balls[y];
balls[y] = temp;
}
if (balls[0] === 0 || balls[1] === 0) { //どちらかが黒
all++;
if (balls[0] === 0) { //左が黒
if (balls[1] === 0) { //もう一つが黒
black++;
}
} else if (balls[1] === 0) { //右が黒
if (balls[0] === 0) { //もう一つが黒
black++;
}
}
}
}
return black + "/" + all + "=" + (black / all);
}