回 帖 发 新 帖 刷新版面

主题:请教高手

到底如何选取随机数种子呢?
我有一段程序,当选择的种子不同,得到的运算结果相差很大,这是为什么?如果选择合适的种子,得到的计算结果就接近理想的计算结果。
想问一下,那这种情况下怎么选择种子呢?
另外请问下面这个产生随机数的程序是什么算法?里面的这些数字是某一特定值,还是随便取得?

SUBROUTINE RANDOM(SEED,RAND) 
IMPLICIT NONE 
INTEGER,DIMENSION(1),INTENT(INOUT)::SEED 
REAL,INTENT(OUT)::RAND
SEED=2045*SEED+1 
SEED=SEED - (SEED/1048576)*1048576  
RAND = REAL(SEED(1)+1)/1048577.0 
RETURN 
END SUBROUTINE RANDOM

回复列表 (共2个回复)

沙发


是不是根据混合同余法来计算的?

种子不同产生的数列不同,计算的结果就可能相差很大

板凳

为何不用系统自带的随机数生成器呢?

我来回复

您尚未登录,请登录后再回复。点此登录或注册