ppts.net
当前位置:首页>>关于急!fortran运行后显示的这个是什么错误!的资料>>

急!fortran运行后显示的这个是什么错误!

输出格式错了。 write(*, '(f8.2,f8.2)') …… …… 改为 write(*, '(A,f8.2,A)') …… …… 即可, 也可改为 write(*, *) …… …… 附注:我的回答常常被“百度知道”判定为违反“回答规范”,但是我一直不知道哪里违规,也不知道对此问题的回答是否违规。

这是很常见的算法错误,通常这种错误是不能再编译的时候发现的,因为者往往不是由语法错误引起的。M6201的错误信息可以到编译器的帮助文件中查找,大意就是自然对数的底超出范围,也就是说在计算log(N)的时候,括号里的N变成负数了,这时候运行...

你的iek没有值,fortran没法计算,你可以把iek加到虚参里去,或者在子程序里给出定值

原因在于楼主要算的级数常常要在30项开外才收敛,因此 un1=3*5*7*...*(2*30-1)*... un2=4*6*8*...*(2*30)*... 超出单精度浮点数的范围3.40E38 解决方法是去掉un1,un2,直接计算un。 ! un1=un1*(2*n-1) ! un2=un2*(2*n) un=un*(2*n-1)/(2*n)*cos...

程序没有错,不过程序是读前20行并写出,你给的输入文件只有9行,读完以后就会遇到endoffile,所以报错了

可能文件名不对,可能路径不对 再检查一下吧

开放的时候是不是出现了负数。检查一下。

fortran里不允许虚参是allocatable的吧 你这个程序应该在主程序call sub(a,b)之前allocate a,然后子程序里用假定形状的数组 integer,intent(out),dimension(:) :: a

嫌弃麻烦,直接安simply fortran

那是因为fortran里面real字符型变量默认的是四字节存储,除了六位小数,符号和小数点各一位就剩24位表示整数位。故最大值为2**24,若要得到真实数据,可在定义变量是加个括号里面加上数字表示存储字节量,如real(8)::sum=0.0。

网站首页 | 网站地图
All rights reserved Powered by www.ppts.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com