kbys.net
当前位置:首页 >> FortrAn的问题 >>

FortrAn的问题

在fortran语言中,abs可以输入的参数类型为 integer, real, or complex; iabs只能输入 INTEGER(4) 类型 ,返回类型 INTEGER(4) http://zhidao.baidu.com/question/327752376.html

“EQ”含义是指等于 GE是大于等于号(>=),GT是大于号(>),LE是小于等于号(

错误。 π 这是一个特殊字符。Fortran 不识别这个字符。 应该是: Real , parameter :: PI = 3.1415926 然后 PI*R**2

是一个块没有写完,或是一个块中出现了不应该出现的字符,比方说: 1,do循环忘记写enddo,或是if then后没有endif 2,括号本应成对出现,却只有一个 3,在一行代码中出现了乱七八糟的字符,可能是手误不小心打上去的 等等。。。

这只是一个警告,用来告诉你,你的跳转,从循环外跳转到一个循环内了。 一般来说,我们的逻辑不会是这样。 如果你确信你的逻辑就是这样,那就不用管这个警告了。 为了说明问题,把你的代码一部分抽出来,像这样: DO 100 K=1,N1 8 WRITE(6,2) K ...

请检查实参,虚参的对应关系。其对应的数据类型,数组大小,精度是否一致?

program main implicit none external Func real(8)::pc=2D6,Vc=4D-3,dt=1D-3,t=0.0,jy1,jy2,pct1 real(8) y0(2),y1(2) y0=(/pc,Vc/) do while(.TRUE.) call RK4(t,y0,dt,y1,Func) !调用RK方法计算pc,Vc jy1=y1(2) jy2=8.635E-4+Vc if(abs(jy1-jy2)

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

因为只需计算到39,计算范围很小,就没考虑运行时间,只编写了需要的程序。 ! integer,parameter:: nn=39 integer ii,jj,kk,num,total,prime(nn) !找出3-39之间的素数 num=0 check_prime: do ii=3,nn do jj=2,ii-1 if(mod(ii,jj).eq.0) cycle c...

不知道参数是不是数组,有可能是数组的个数没有控制好。

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