关于Fortran的一个问题!

来源:百度知道 编辑:UC知道 时间:2024/05/16 15:41:41
20 CONTINUE
CALL FCN( N,X,F)
CALL GRD( N,X,G)
CALL VA15AD(N,M,X,F,G,DIAGCO,DIAG,IPRINT,EPS,S,Y,
* POINT,W,IFLAG,FTOL)
C
IF(IFLAG.LE.0) GO TO 50
ICALL=ICALL + 1
IF(ICALL.GT.MAXIN) GO TO 50
GO TO 20
50 CONTINUE
END
这段代码是怎么循环的,请高手给讲讲 20 的continue 和50 的continue 有什么不一样啊!

这是一个判断语句引起的循环,有两个判断标注:IFLAG 和ICALL。当IFLAG<0 跳出循环,当ICALL单步增加到MAXIN后停止循环。 20,50只是一个循环进口和出口而已,只是“门牌号”标注。

CINTUNUE 是不循环的。楼主给的代码不全,应该找到 DO 20 和 DO 50,这样才能知道从什么地方开始循环。CONTINUE 一般用作循环的尾端。