Sun Studio 12: Fortran ライブラリ・リファレンス

1.4.41 randdrand irand: 乱数を戻す

rand は 0.0 から 1.0 の範囲の実数値の乱数を戻します。

drand は 0.0 から 1.0 の範囲の倍精度値の乱数を戻します。

irand は 0 から 2147483647 の範囲の正の整数値の乱数を戻します。

これらの関数は、random(3) を使用して乱数の列を発生させます。これらの 3 つの関数は、同じ 256 バイトの状態配列を共有します。3 つの関数の唯一の利点は、UNIX システムで幅広く利用できることです。乱数を生成するさらに優れた関数としては、lcransaddrans、および shufrans があります。random(3) および『数値計算ガイド』も参照してください。

i = irand( k )

r = rand( k )

d = drand( k )

k

INTEGER*4

入力 

k=0: 次の乱数を乱数列から取り出す

k=1: 乱数列を再開し、最初の数を戻す

k>0: 新しい乱列数の種として使用し、最初の

数を戻す 

rand

REAL*4

出力 

 

drand

REAL*8

出力 

 

irand

INTEGER*4

出力 

 

例: irand():


demo% cat trand.f
       integer*4 v(5), iflag/0/
       do i = 1, 5
        v(i) = irand( iflag )
       end do
       write(*,*) v
       end
demo% f95 trand.f
demo% a.out
   2078917053 143302914 1027100827 1953210302 755253631
demo%