24小时热门版块排行榜    

查看: 1892  |  回复: 5

dongjianzhi

铜虫 (小有名气)

[求助] Fortran 声明变量

大家好:

我刚刚接触Fortran,看见个代码中用了dimension这个东西, 我在书里翻了一下,没看到dimension可以声明变量。

请问这个是什么意思呢? 谢谢!

      Program Main_hydrus
      double precision P,R,S,Q,RTime1,t,tInit,tOld,RTime,tMax,tAtm,
     !                 tPrint1,tAtm1,tAtm2,tAtmOld,tAtmN,tAtm2O,
     !                 TPrint,tPrintInt
      character cFileName*260,cDataPath*260,ccname*260

      dimension x(NumNPD),hNew(NumNPD),hOld(NumNPD),hTemp(NumNPD)
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

11jxli1

禁虫 (著名写手)


感谢参与,应助指数 +1
xzhdty: 金币+1, 谢谢参与 2012-12-23 18:19:50
本帖内容被屏蔽

2楼2012-12-23 09:41:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jingjingdou

银虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
dimension在fortran是定义数组,楼主的程序段中,
dimension x(NumNPD),hNew(NumNPD),hOld(NumNPD),hTemp(NumNPD)
定义了x,hNew,hOld,hTemp四个一位数组,括号内的变量代表了数组的大小。需要注意的是在fortran中默认以a-h和o-z开头的变量为实型变量,而其他的均为整型变量,所以在这里NumNPD是一个整型变量。
例如:dimension x(100)即定义了一个容量了100的一维数组,记为x(100),上述四个数组含义类似。
fortran语言对语法要求相对严格一些,祝学习顺利!
以上愚见,如有不当之处,请见谅……
顺一点,一点就好!
3楼2012-12-24 17:51:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

@我的朋友@

银虫 (小有名气)

楼上解答的很好,建议多给点鼓励。
性情中人!
4楼2012-12-25 21:16:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhaiyu_jlu

铜虫 (初入文坛)

【答案】应助回帖

dimension是声明数组大小用的。
比如:
      real a
      dimension a(10)
fortran90的新语法可以写成:
real a(10)
不过我看lz的代码前面都有缩进,所以估计是旧语法。新语法向前兼容,但是老板看不懂……
5楼2013-01-09 21:36:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (初入文坛)

本帖仅楼主可见
6楼2013-01-22 22:24:06
已阅   申请程序强帖   回复此楼   编辑   查看我的主页
相关版块跳转 我要订阅楼主 dongjianzhi 的主题更新
信息提示
请填处理意见