Location : Home > Languages > Perl > Package
Title : Math::Rand48
Toolbox Logo

名称

 Math::Rand48 - 48bit系乱数生成関数とのインタフェースを提供する。


概要

use Math::Rand48;

my $n = drand48();        # [0.0,1.0) の乱数
my $seed = seed48();      # drand48, lrand48, mrand48 への種を設定
my $m = erand48($seed);   # 種を変更した [0.0,1.0) の乱数

seed48($seed);            # drand48, lrand48, mrand48 への種を設定

use Math::Rand48 qw(lrand48);
my $un = lrand48();
my $um = nrand48($seed);

説明

 本パッケージは UNIX システムに標準的に提供されている 48bit系乱数生成関数とのインタフェースを提供する。

seed48

 drand48, lrand48, mrand48 により用いられた現在の種を返す。引数を指定した場合にはその値を種に設定する。

drand48
erand48($seed)

 [0.0,1.0) の範囲の数を返す。erand48 を用いて複数の独立した乱数の列が得られる。

lrand48
nrand48($seed)

 [0,2**31) の範囲の整数を返す。nrand48 を用いて複数の独立した乱数の列が得られる。

mrand48
jrand48($seed)

 [-2**31,2**31) の範囲の整数を返す。jrand48 を用いて複数の独立した乱数の列が得られる。

 上述の $seed は Perl のスカラーである。利用する際には、これらは6バイトの文字列に変換される。入力値が6バイト以下ならば 0xFF で埋められる。入力値が6バイト以上であれば Perl のハッシュ関数を用いて 0xFF 2バイト分で埋められた32ビットの値に変換される。入力値が4バイトの整数であれば2バイト分は 0xFF で埋められる。


著者

 Nick Ing-Simmons, <nick@ni-s.u-net.com>

Toolbox Logo
Updated : 2006/06/10