我正在寻找一个输入数字并在两个数字之间返回一个数字的函数
def generate_number input_number, max, min
end
函数的输出应该是一个数字,取决于最小值和最大值之间的input_number
注意:每次它都应返回input_number
答案 0 :(得分:2)
您正在寻找Random
:
Random.new(123).rand(1..10) #=> 3
123
是seed(您的 input_number ),1
和10
min 和最大值。
不同的种子产生不同的数字,相同的种子产生相同的数字。这在生成可重复的随机数序列时特别有用:
r = Random.new(123)
10.times.map { r.rand(1..10) }
#=> [3, 3, 7, 2, 4, 10, 7, 2, 1, 2]
r = Random.new(456)
10.times.map { r.rand(1..10) }
#=> [6, 10, 5, 6, 8, 2, 9, 4, 6, 3]
r = Random.new(123)
10.times.map { r.rand(1..10) }
#=> [3, 3, 7, 2, 4, 10, 7, 2, 1, 2]