Fortran Coder

查看: 10452|回复: 5
打印 上一主题 下一主题

[数值问题] 程序的变量值变化的很奇怪,求助

[复制链接]

27

帖子

0

主题

0

精华

熟手

F 币
212 元
贡献
101 点
楼主
发表于 2018-5-17 21:54:39 | 显示全部楼层
请提供文件"PFSAP.IN".在没有此文件的情况下,直觉建议您:
1.主程序和子例行程序加上 implicit none;
2.详细检查所有变量、数组的声明和初始化

27

帖子

0

主题

0

精华

熟手

F 币
212 元
贡献
101 点
沙发
发表于 2018-5-17 23:04:55 | 显示全部楼层
chaunceyyou 发表于 2018-5-17 22:16
2
EXAMPLE----(5-2)
5,7,7,2,3,0

坏在您的主程序中CALL PUTIN(NJ,N,NE,NM,NPJ,NPF,JN,X,Y,JE,JEAI,EAI,JPJ,PJ,JPF,PF)这个过程中子例行程序PUTIN中I,I1,IE,IP,J,KK这些变量都没有初始化,以Intel visual Fortran编译器为例,这些变量不初始化直接拿来算编译器默认给的值是-858993460.有这些不确定性的隐患存在,导致后面EAI的值不稳定是正常的。

衷心给您的敬告:
1.尽管您的程序以Release模式可以得过且过运行出结果并正常退出,但是不初始化就拿来算这个隐患希望您心里有数。
2.不写implicit none,不重视初始化的程序都是在耍流氓。

评分

参与人数 1F 币 +5 贡献 +5 收起 理由
fcode + 5 + 5 赞一个!

查看全部评分

27

帖子

0

主题

0

精华

熟手

F 币
212 元
贡献
101 点
板凳
发表于 2018-5-19 19:21:52 | 显示全部楼层
chaunceyyou 发表于 2018-5-18 09:50
非常谢谢你,我刚接触fortran没多久,书上的程序用的版本比较老,再继续时一定注重规范 ...

客气 祝学习愉快
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-15 21:39

Powered by Tencent X3.4

© 2013-2024 Tencent

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