From: Gavin Kistner Date: 2006-11-15T02:53:17+09:00 Subject: Re: lib - generating a list of random number From: Robert Klemme [mailto:shortcutter@googlemail.com] > On 14.11.2006 17:09, Josselin wrote: > > but I don't understand very well how to coordinate the sue > > of srand and rand.. > > I am not sure I understand you here. What does "sue" mean here? I think Josselin meant "use". > What about this? > > >> def rand_seq(count, min, max) > >> (1..count).map { rand(max-min) + min } > >> end > => nil > >> rand_seq 10, -5, 5 > => [2, -4, -2, -1, -3, 1, 1, 1, -3, 0] I think you have a fencepost error there... irb(main):017:0> r = rand_seq( 1_000_000, -10, 10 ) irb(main):018:0> r.min => -10 irb(main):019:0> r.max => 9 ...though it depends if the OP wanted min/max to be inclusive or exclusive. Also, it depends on if the OP wanted integers only or floats. If floating point numbers are desired, here's an alternative: def rand_seq(count, min, max) (1..count).map { rand * (max-min) + min } end r = rand_seq( 10_000_000, -10, 10 ) p r.min, r.max #=> -9.99999704788504 #=> 9.99999886739173 p r[ 0..10 ] #=> [6.89334712606148, -3.51560170870142, 3.62144692732178, 9.29043168269461, -8.24044290511051, -6.06086914781006, -6.78123809802907, 7.52184969087783, -2.21712322878881, -0.845330115529201, -2.82092973043312]