Wednesday, May 21, 2008

Random Number with ruby

using rand

Generate a random number in integer

rand(range in max)

for e.g.
get a random number from 1 to 10

1+rand(10)

Why need to plus "1", because rand returns 0...max-1

irb(main):034:0> 1+rand(10)
=> 8
irb(main):035:0> 1+rand(10)
=> 2
irb(main):036:0> 1+rand(10)
=> 7
irb(main):037:0> 1+rand(10)
=> 5
irb(main):038:0> 1+rand(10)
=> 1
irb(main):039:0> 1+rand(10)

Random a floating point number,
calling rand with null argument, rand returns floating number in range [0,1]

for e.g. for range 1...10
1 + rand * 9

irb(main):079:0> 1 + rand*9
=> 5.85549064689046
irb(main):080:0> 1 + rand*9
=> 8.5913031102674
irb(main):081:0> 1 + rand*9
=> 5.84003966648288
irb(main):082:0> 1 + rand*9
=> 3.45730690493765
irb(main):083:0> 1 + rand*9
=> 9.07177615052255
irb(main):084:0> 1 + rand*9
=> 5.07483813090987
irb(main):085:0> 1 + rand*9
=> 8.22263965908269

No comments: