主题:Linux 下fortran产生随机数的问题 (gfortran)
Code:
program my_random
implicit none
real::x
integer::i
call random_seed()
do i=1,10
call random_number(x)
write(*,*) x
end do
end
编译后运行的结果是
Code:
0.99755955
0.56682467
0.96591532
0.74792767
0.36739087
0.48063689
7.37542510E-02
5.35517931E-03
0.34708124
0.34224379
再编译运行:
Code:
0.99755955
0.56682467
0.96591532
0.74792767
0.36739087
0.48063689
7.37542510E-02
5.35517931E-03
0.34708124
0.34224379
额,问题出现了,无论重新编译运行多少次,每次都是那10个随机数,不懂是什么问题阿,Google过了,都说加上 call random_seed()就好,可是我加了阿,还是不行,windows的fortran编译器就不会出现这样的问题。大家有知道解决方法的么,多谢咯
program my_random
implicit none
real::x
integer::i
call random_seed()
do i=1,10
call random_number(x)
write(*,*) x
end do
end
编译后运行的结果是
Code:
0.99755955
0.56682467
0.96591532
0.74792767
0.36739087
0.48063689
7.37542510E-02
5.35517931E-03
0.34708124
0.34224379
再编译运行:
Code:
0.99755955
0.56682467
0.96591532
0.74792767
0.36739087
0.48063689
7.37542510E-02
5.35517931E-03
0.34708124
0.34224379
额,问题出现了,无论重新编译运行多少次,每次都是那10个随机数,不懂是什么问题阿,Google过了,都说加上 call random_seed()就好,可是我加了阿,还是不行,windows的fortran编译器就不会出现这样的问题。大家有知道解决方法的么,多谢咯