8分の1の確率で結果が変わるプログラムを作りたいのですが、
randomを用いて書いたコードがうまく働きません。下記のコードを数秒実行した結果、
A=13, B=33, C=33, D=31, E=18, F=6, G=1
と、徐々に確率が下がる結果になってしまいました。
他の方の似た質問への回答でランダムで0〜7を発生させてその解を使うというものを読んだので、この例がうまくいかなければそちらで試そうかと思っていますが、下記のコードでなぜ配分が変わってしまうのか理解できず、ご指摘いただけたら嬉しいです。どうぞよろしくお願いいたします。
function draw() { if (random(8) > 7) { print('A'); } else if (random(8) > 6) { print('B'); } else if (random(8) > 5) { print('C'); } else if (random(8) > 4) { print('D'); } else if (random(8) > 3) { print('E'); } else if (random(8) > 2) { print('F'); } else if (random(8) > 1) { print('G'); } else if (random(8) > 0) { print('H'); } }
回答1件
あなたの回答
tips
プレビュー