Math.random()とMath.floor()を組み合わせてランダムな整数値を生成する方法について学んでいきます。
- 0,1,2のランダムな整数値
- 0,...,nのランダムな整数値
- min,...,maxのランダムな整数値
- サイコロの実装
0,1,2のランダムな整数値
・Math.random() を他の命令と組み合わせることによって任意の数字をランダムで表示させることが出来ます。
・例えば0から2までの整数で数値を表示させたい場合、Math.floor(Math.random() * 3);としてあげると小数点以下の数字を3倍した値で小数点以下を切り捨て、0,1,2のどれかの数字が表示されます。
0,...,nのランダムな整数値
・同様の考え方でMath.floor(Math.random() * (n + 1)));とすると0からn番目までの整数をランダムで表示します
min,...,maxのランダムな整数値
・応用として、 min から max までのランダムな整数値を生成したい場合は、この式の n を max に置き換えたうえで min を足してあげる必要があります。
・生成される数値の範囲も min の分だけ大きくなってしまうので、ここで min を引いてあげてください。
・Math.floor(Math.random() * (max - 1 + min)) + min;とするとmax〜minまでの整数を表示出来ます。
サイコロの実装
・上記の方法を応用すると1から6までの整数を表示させる命令を書くことができるのでサイコロのような数字をランダムに表示することも出来ます。
・console.log(Math.floor(Math.random() * 6) + 1);としてあげればいいですね。