爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 2806|回复: 2

[求助] fortran程序变量申明、用法及编译遇到的问题

[复制链接]

新浪微博达人勋

发表于 2016-9-5 09:17:20 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 uranuscc 于 2016-9-5 09:46 编辑

请教大神:

我在看别人写的fortran程序的时候遇到一个问题,源程序中在定义变量的时候,出现了这么一句:
double precision integr
用到integr的时候是这样的:
integr(xx) = (1.d0 - exp(-xx))/xx
编译就通不过了,错误提示是:
remark #7713: This statement function has not been used.   [INTEGR],这是什么原因呢?

如果将变量名integr 改成有限数组,例如:double precision integr(1000000)
该程序编译能通过,但是
integr(xx) = (1.d0 - exp(-xx))/xx
并未起作用,
print*,integr(100), integr(100)仍为0.000000

请问这个语句到底是如何使用的呢?


test.f

241 Bytes, 下载次数: 0, 下载积分: 金钱 -5

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-9-6 21:02:33 | 显示全部楼层
你的这个问题在于exp()这个函数,括号里面的数据类型必须是实型或者复型,你的那个程序文件我没有下,估计这个XX是循环变量,是整型的所以修改的话就是在exp(-real(xx))
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-9-7 08:56:41 | 显示全部楼层
Nono 发表于 2016-9-6 21:02
你的这个问题在于exp()这个函数,括号里面的数据类型必须是实型或者复型,你的那个程序文件我没有下,估计 ...

恩,好滴,谢谢
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表