回 帖 发 新 帖 刷新版面

主题:[讨论]fortran里面如何生成一个随机数?

如题,fortran里面如何才能生成一个随机数,比如我想要生成一个0到1之间的随机数,或者我想生成一个13到20之间的一个随机整数?matlab里面有rand和randi命令,fortran里面如何实现这一功能?
谢谢!!

回复列表 (共13个回复)

11 楼

我觉得是对的.
经过自己思考和编写代码不单止有成功感,也积累了解决问题的经验.

12 楼

最简单的算法:step 1 :产生[0,1)之间的随机数 x
              step 2 : x <--- x*(21-7)+ 7,  则,x是[7,21)均匀分布的浮点数
              step 3 : int(x)  则 int(x)是[7,20]上均匀分布的整数

13 楼

      program main
 integer i
 do 10 i=1,20
 call random
 floor(x*(20-13+1)+13)
 write(*,*)x
10 continue
 end

 subroutine  random
 implicit none
 real x
      call random_seed()
 call random_number(x)
 end
楼主按照你的方法没实现。。。。。。

 

 

我来回复

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