求一个Fortran程序
来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/08/18 16:36:07
求一个Fortran程序
算法为:r是一个均匀分布于区间(-1,1)的一个随机数.这样,J可以写成J=J0(1+pr),求J0=1,p=0.2,0.4,0.6,0.8时的J值.求该算反的Fortran程序,
算法为:r是一个均匀分布于区间(-1,1)的一个随机数.这样,J可以写成J=J0(1+pr),求J0=1,p=0.2,0.4,0.6,0.8时的J值.求该算反的Fortran程序,
![求一个Fortran程序](/uploads/image/z/7431689-65-9.jpg?t=%E6%B1%82%E4%B8%80%E4%B8%AAFortran%E7%A8%8B%E5%BA%8F)
现在计算机产生的随机数都是伪随机数.
random_number(x) 产生一个0到1之间的随机数(x可以是向量),但是每次总是那几个数.
用了random_seed ()后,系统根据日期和时间随机地提供种子,使得随机数更随机了.
program random
implicit none
real :: x
call random_seed () ! 系统根据日期和时间随机地提供种子
call random_number (x) ! 每次的随机数就都不一样了
write(*,*) x
stop
end program random
有了随机数,上面的问题就解决了
random_number(x) 产生一个0到1之间的随机数(x可以是向量),但是每次总是那几个数.
用了random_seed ()后,系统根据日期和时间随机地提供种子,使得随机数更随机了.
program random
implicit none
real :: x
call random_seed () ! 系统根据日期和时间随机地提供种子
call random_number (x) ! 每次的随机数就都不一样了
write(*,*) x
stop
end program random
有了随机数,上面的问题就解决了