日本-日本語 |
|
|
|
OpenVMS マニュアル |
|
HP OpenVMS
|
目次 | 索引 |
mrand48 |
一様分布の擬似乱数列を生成します。48 ビットの符号付き long 整数を返します。
#include <stdlib.h>long int mrand48 (void);
mrand48関数は,線形合同法アルゴリズムと 48 ビット整数算術演算を使用して,擬似乱数を生成します。この関数は, -231 <= y < 231 の範囲内で一様に分布する,符号付き long 整数を返します。
mrand48関数を呼び出す前に, srand48, seed48, または lcong48を使用して乱数ジェネレータを初期化してください。初期化は mrand48関数を呼び出す前に行わなくてはなりません。 mrand48は,生成された最後の 48 ビットの Xi を内部バッファに格納するからです ( これは推奨はされませんが, drand48, lrand48,または mrand48関数が,初期化関数を呼び出すことなく呼び出された場合には,定数のデフォルト・イニシアライザ値が自動的に提供されます )。
この関数は,次の線形合同式に従って,48 ビットの整数値 Xi のシーケンスを生成します。
Xn+1 = (aXn+c)mod m n >= 0
引数 m は 248 に等しいので, 48 ビット整数算術演算が実行されます。 lcong48関数を呼び出さなかった場合,乗数値 a と加算される値 c は次のようになります。
a = 5DEECE66D16 = 2736731631558 c = B16 = 138
mrand48関数から返される値は,まずシーケンス内の次の 48 ビット Xi を生成することによって計算されます。その後,返されるデータ項目の型に応じて,適切なビットが Xi の最上位ビットからコピーされ,戻り値へと変換されます。
drand48, lrand48, lcong48, seed48, および srand48も参照してください。
n -2 31 <=y < 2 31 の範囲で一様分布する,符号付き long 整数を返します。
目次 | 索引 |
|