看板Programming
标 题Re: 请问Fortran如何产生"不同"的随机变数
发信站梦之大地 (Fri Oct 19 22:26:04 2007)
转信站ptt!ctu-reader!ctu-peer!ctu-gate!news.nctu!news2!ccnews.ncku!Dream
感谢回答
但是我加入CALL RANDOM_SEED之後
每次执行出来的乱数还是一样
我加入的地方是在random_number之前
例:
call random_seed()
call random_number(popu)
Build程式之後,每次Excute出来的乱数都一样
我问了google之後,找到关於random_seed的使用
http://www.okok.org/cgi-bin/ut/topic_show.cgi?id=157388&h=1&bpg=1&age=30
他说: "random_seed()产生的种子是由当前计算机的日期和时间组成"
而且 "取决于中间语句的执行时间"
他加入了一个很长的回圈,故意让程式执行久一点
do i=1, 1e10
end do
之後再呼叫random_seed(),果然乱数就不一样了
该不会Fortran每次想产生不同乱数都要这麽麻烦吧...??
※ 引述《[email protected] (琏琏)》之铭言:
> 贴错函数。
> CALL RANDOM_NUMBER (harvest)
> 这个是传回乱数。
> 纯粹设乱数种子:
> CALL RANDOM_SEED ([size] [, put] [, get])
> ==> 本文由 "琏琏 <[email protected]>"
> > 於 news:3CB93BFB9C0942BA9FABE2E445D16673%40c2e6400 发表
> > Fortran 90 的标准应该是
> > CALL RANDOM_NUMBER (harvest)
> > SRAND 是 Intel Fortran 提供的延伸函式,并不被其他的 Fortran 编译器支援。
--
◢◣ ︵︵ █▔◣ █▔█ █▔▔ █▔█ █▆▉ █ █▔█ █◣█ █▔●
◢◤█◣◢◣ ︵︵ █ █ █▁◤ █▁▁ █▁█ ▉▉▉ █ █▁█ █◥█ █ █
梦之大地 逼逼ㄟ四 █▁◤ █ █ █▁▁ █ █ ▉▉▉ █▁ █ █ █ █ █▁◤
※ Origin: <bbs.ccns.ncku.edu.tw> ◆ From: 59.127.64.104