概要
Kernel#rand(max = 0) -> Integer | Float
Kernel#rand(range) -> Integer | Float | nil
詳細
擬似乱数を発生させる。
・Kernel#rand(max = 0)
max が 0 の場合は 0.0 以上 1.0 未満の実数を、正の整数の場合は 0 以上 max 未満の整数を返す。
それ以外の値を指定した場合は max.to_int の絶対値が指定されたものとして扱う。
Kernel#rand(range)
二番目の形式では range で指定された範囲の値を返す。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
range に含まれる数が無い場合は nil を返します。
サンプルコード
5.times { print rand, "," } puts 20.times { print rand(10), "," } puts 20.times { print rand(10..15), "," } puts 5.times { print rand(1.618..3.14), "," } puts
出力
0.020002887740866004,0.5727760008264157,0.7094309202359375,0.7679083324602716,0.7483579600780531, 4,5,2,8,3,7,8,1,8,5,0,1,4,0,6,7,4,8,5,0, 13,10,10,12,10,14,12,11,13,11,12,13,13,15,10,12,10,13,11,13, 2.2546050487564284,2.549052449957986,2.6430267438642296,2.876379157395875,1.972214122439303,