如何生成介于0和n之间的随机数?


当前回答

你可以做rand(范围)

x = rand(1..5)

其他回答

这个呢?

n = 3
(0..n).to_a.sample

尝试array#shuffle方法进行随机化

array = (1..10).to_a
array.shuffle.first

您可以使用ruby rand方法,如下所示:

rand(n+1)

您需要使用n+1,因为rand方法返回任何大于或等于0但小于传递的参数值的随机数。

范围=10..50

兰特(范围)

or

采样范围

or

range.to_a.shuffle(这将对整个数组进行随机排序,您可以从这个数组中按第一个或最后一个或任意一个选择随机数)

rand(6)    #=> gives a random number between 0 and 6 inclusively 
rand(1..6) #=> gives a random number between 1 and 6 inclusively

请注意,范围选项仅在更新(我相信是1.9+)的ruby版本中可用。