亂數,隨機取得正整數

#Math.random()
#Math.floor()


Math.random()能夠隨機產生0~1之間的小數
而Math.floor()則是無條件捨去。

?:如何取得一個範圍的隨機正整數。

Math.random()隨機產生最大的值為0.9...
用這個數
乘以1,會得到0....
乘以2,會得到1...
乘以3,會得到2...
乘以4,會得到3...
以此類推。
因此從隨機產生的最小到最大值再乘上正整數,
可以發現,Math.random()
乘上1,回傳0
乘上2,回傳0~1
乘上3,回傳0~2
乘上4,回傳0~3
因此便可以利用乘上某一個數字,來控制取得正整數的範圍。

再用Math.floor去掉後面的小數,便得到隨機的正整數。


留言