我正在测试链接中提到的 RNG 代码(fortran 77 代码):
https
://www.cisl.ucar.edu/zine/96/spring/articles/3.random-6.html
它应用了 Park & Miller 算法.
程序的函数调用是
call srand(seed)
x=rand()
然而,该程序似乎没有响应 srand() 的播种,即 x 值不受初始播种的影响,并且始终等于 ~0.218。我怀疑这与公共块和数据块的定义有关,因为x的值相当于将种子放置为123456789,这是数据块中定义的初始化值。
有任何想法吗?
我正在用 gfortran 编译。