CoffeeScript 生成隨機數(shù)

2022-06-29 17:04 更新

生成隨機數(shù)

問題

你需要生成在一定范圍內(nèi)的隨機數(shù)。

解決方案

使用JavaScript的Math.random()來獲得浮點數(shù),滿足0<=X<1.0。使用乘法和Math.floor得到在一定范圍內(nèi)的數(shù)字。

probability = Math.random()
0.0 <= probability < 1.0
# => true

# 注意百分位數(shù)不會達(dá)到 100。從 0 到 100 的范圍實際上是 101 的跨度。
percentile = Math.floor(Math.random() * 100)
0 <= percentile < 100
# => true

dice = Math.floor(Math.random() * 6) + 1
1 <= dice <= 6
# => true

max = 42
min = -13
range = Math.random() * (max - min) + min
-13 <= range < 42
# => true

討論

對于JavaScript來說,它更直接更快。

需要注意到JavaScript的Math.random()不能通過發(fā)生器生成隨機數(shù)種子來得到特定值。詳情可參考產(chǎn)生可預(yù)測的隨機數(shù)

產(chǎn)生一個從0到n(不包括在內(nèi))的數(shù),乘以n。
產(chǎn)生一個從1到n(包含在內(nèi))的數(shù),乘以n然后加上1。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號