24小时热门版块排行榜    

CyRhmU.jpeg
查看: 721  |  回复: 2
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

田山东

捐助贵宾 (著名写手)


[交流] 这样居然也能产生随机数

本来有个程序,要重复调用一个数组,但是数组对角元为-0.5---0.5之间的随机数,没想到下面的语句也可以实现:
N=20
Gj=0.8
   CALL RANDOM_SEED()
!!第一次生成随机数
      CALL RANDOM_NUMBER(Gj)
        do j=1,N
      H0(j,j)=(Gj(j)-0.5)*0.2*t
      enddo
        CALL SLRD(N,ENG,H0,HL,HR,SL,ETA,EPS)         
        CALL RANDOM_NUMBER(Gj)
  !!第二次生成随机数   
      do j=1,N
      H0(j,j)=(Gj(j)-0.5)*0.2*t
      enddo

        CALL SLRD(N,ENG,H0,HR,HL,SR,ETA,EPS)        
!!第三次生成随机数
        CALL RANDOM_NUMBER(Gj)
      do j=1,N
      H0(j,j)=(Gj(j)-0.5)*0.2*t
      enddo
经过验证,三次生成的随机数不同。而且,数次运行程序,每次生成的随机数也是互不相同的。看来这样很合理了。
发个帖,作个记号吧。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

田山东

捐助贵宾 (著名写手)


引用回帖:
2楼: Originally posted by 615780236 at 2012-12-25 21:43:23
恭喜楼主
N=20
Gj=0.8
   CALL RANDOM_SEED()
!!第一次生成随机数
      CALL RANDOM_NUMBER(Gj)
        do j=1,N
      H0(j,j)=(Gj(j)-0.5)*0.2*t
      enddo
        CALL SLRD(N,ENG,H0,HL,HR,SL,ET ...

谢谢参与。
3楼2012-12-26 10:59:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 3 个回答

615780236

禁虫 (知名作家)


田山东(金币+1): 谢谢参与
本帖内容被屏蔽

2楼2012-12-25 21:43:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复(可上传附件)
信息提示
请填处理意见