24小时热门版块排行榜    

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

19870617

木虫 (著名写手)

[求助] 新手请教最大值输出问题

自己编的很小的一段程序

  
program main
    implicit none
    integer :: n,i
    real(8) ::pi,u1,u2,r   
   pi=3.1415926535
    call random_seed ()
    n=1000      
   do i=1,n
    call random_number(u1)
    call random_number(u2)
    r=sqrt(-log(u1))*cos(2*pi*u2)  
    print *,r
    enddo
    end
现在我想把r的值存储到一个数组当中,以后每次调用数组中的一个r值,并输出数组中随机生成的r的最大值,请问大侠该如何编写,刚刚学习FORTRAN,希望大家多多指教,不胜感激。
金币少了点,希望大家多多帮忙,谢谢!
回复此楼

» 猜你喜欢

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

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

19870617

木虫 (著名写手)

引用回帖:
6楼: Originally posted by snoopyzhao at 2012-08-27 20:07:45
把完整的代码贴出来吧……...

您好!源码是这样的
        program main
     implicit none
     integer :: n,i
     real(8) ::pi,u1,u2,maxr
         real(8) :: r(1)  
    pi=3.1415926535
     call random_seed ()
     n=1000      
    do i=1,n
     call random_number(u1)
     call random_number(u2)
     r=sqrt(-log(u1))*cos(2*pi*u2)  
     print *,r
     enddo
         maxr=maxval(r)
         print *,"the largest is",maxr
    end

输出现在是1列了,但是求最大值的时候输出的maxr是最后一个r值,而不是最大值,请问maxval这样用对嘛?
7楼2012-08-27 21:54:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 9 个回答

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖


感谢参与,应助指数 +1
jjdg: 金币+1, 感谢应助 2012-08-28 00:16:19
把 r 定义为一个数组就可以了……

找本入门的书看一下吧
2楼2012-08-27 17:56:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

19870617

木虫 (著名写手)

引用回帖:
2楼: Originally posted by snoopyzhao at 2012-08-27 17:56:59
把 r 定义为一个数组就可以了……

找本入门的书看一下吧

r定义为数组?一维大小为1000嘛?试了一下输出的r有3列,感觉不对啊
3楼2012-08-27 18:30:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

引用回帖:
3楼: Originally posted by 19870617 at 2012-08-27 18:30:01
r定义为数组?一维大小为1000嘛?试了一下输出的r有3列,感觉不对啊...

你是怎么输出的?

一个一维数组为啥会输出三列(二维)?
4楼2012-08-27 19:01:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见