一个fortran77程序在fortran90中运行出错,请大神看看哪些地方需要修改。
programex11DIMENSIONDA(4),DB(4),DC(4),A(300),P(600),Q(600),Y(600),E(6)WRITE(6,200)200...
program ex11 DIMENSION DA(4),DB(4),DC(4),A(300),P(600),Q(600),Y(600),E(6)WRITE(6,200)200 FORMAT(1HO,'H IHX')READ(5,202) H,IHX202 FORMAT(4I8)WRITE(6,201)201 FORMAT(1HO,'T V R1 R2 B')READ(5,203) T,V,R1,R2,B203 FORMAT(6F12.0)WRITE(6,90)90 FORMAT(//1X, 'LONGITUDINAL IMPACT(LUMPED SYSTEM(2-PART))')WRITE(6,21)21 FORMAT(1H,' H(KIZAMI)= V(SYOSOKUDO)=')WRITE(6,25)H,V25 FORMAT(2(2XE12.5))WRITE(6,22)22 FORMAT(1H,' RI(M1/M2)= R2(M/M2)= B(E1/E2)=')WRITE(6,23) R1,R2,B23 FORMAT(3(2XE12.5)//)DO 120 I=1,599120 Y(I)=0.0Y(600)=-V*R2/(R2+0.5)130 Q(I)=0.0DO 140 I=1,6140 E(I)=0.0DA(1)=0.5DA(2)=0.29289DA(3)=1.7071DA(4)=0.16667DB(1)=2.0DB(2)=1.0DB(3)=1.0DB(4)=2.0DC(1)=0.5DC(2)=DA(2)DC(3)=DA(3)DC(4)=0.5IH=1IT=0ITH=0T=0.030 WRITE(6,24) T,(E(I),I=1,6)ITH=ITH+IHX50 T=T+HIT=IT+IHDO 26 J=1,4A(1)=Y(1)DO 92 I=2,30092 A(I)=Y(I)-Y(I-1)DO 27 I=1,30027 P(I)=Y(I+300)DO 28 I=301,44928 P(I)=B*(A(I-299)-A(I-300))/R1P(450)=2.0*(A(151)-B*A(150))/(1.0+R1)DO 29 I=451,59929 P(I)=A(I-299)-A(I-300)P(600)=-A(300)/(R2+0.5)DO 31 I=1,600Y(I)=Y(I)+H*(DA(J)*(P(I)-DB(J)*Q(I)))31 Q(I)=Q(I)+3.0*(DA(J)*(P(I)-DB(J)*Q(I)))-DC(J)*P(I)26 CONTINUEE(1)=Y(2)-Y(1)E(2)=Y(76)-Y(75)E(3)=Y(150)-Y(149) E(4)=Y(151)-Y(150)E(5)=Y(226)-Y(225)E(6)=Y(300)-Y(299) IF((E(1).GE.0).AND.(E(6).GE.0)) GO TO 71IF(ITH-IT) 30,30,5071 WRITE(6,24)T,(E(I),I=1,6)24 FORMAT(F8.2,6(2XE10.3))STOPEND
程序语法没有错误,能够执行,但是计算结果是nan 。事关毕业,求大神好心帮忙。看看77的程序到90中哪些地方要改,如何改。跪求! 展开
程序语法没有错误,能够执行,但是计算结果是nan 。事关毕业,求大神好心帮忙。看看77的程序到90中哪些地方要改,如何改。跪求! 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询