-5
我尋找它接受一個輸入數,並返回兩個數字函數產生兩個數字之間的數
def generate_number input_number, max, min
end
的函數的輸出之間的數應該是一個數取決於input_number
之間的函數最小和最大。
注:每次它應該返回的input_number
我尋找它接受一個輸入數,並返回兩個數字函數產生兩個數字之間的數
def generate_number input_number, max, min
end
的函數的輸出之間的數應該是一個數取決於input_number
之間的函數最小和最大。
注:每次它應該返回的input_number
您正在尋找Random
相同的輸出:
Random.new(123).rand(1..10) #=> 3
123
是seed(你input_number),1
和10
您分鐘和max值。
不同的種子會產生不同的數字,相同的種子會產生相同的數字。
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]
值得一提的是,如果你不需要重複性(和你平時不),你可以只用'蘭特(1..10):產生一個可重複的隨機數序列時,這是非常有用的'。你也可以用['Random.srand'](http://ruby-doc.org/core-2.2.0/Random.html#method-c-srand)設置全局種子,即'Random.srand(123 ); rand(1..10)'將產生與Random.new(123).rand(1..10)'相同的結果。 –