DO 57 J=1,M1
SX(J)=1.
SXMN(J)=1.
IF(MODE.LT.3)GOTO 57
SX(J)=R(J)
IF(J.NE.1)SXMN(J)=RMN(J)
57 CONTINUE
DO 62 J=2,M2
YCVR(J)=R(J)*YCV(J)
ARX(J)=YCVR(J)
IF(MODE.LT.3)GOTO 62
請問各位大大程式跑的流程 DO 52那行之後 下面的RMN(J)=1.0也是要代入1~7嗎(M1=7)
還是沒有?
然後在DO 57那行後 57那行是CONTINUE 就直接從CONTINUE那行在繼續跑下去
還是 SX(J)=1.
SXMN(J)=1. 這兩個也要跑也要代1~7
我是fortran新手 麻煩各位大大指教囉~"~
因為專題需要 沒有時間把基礎工學的很紮實 只有自己看書 不過這裡真的有點模糊
麻煩大大解題了..
2007-02-10 18:42:15 · 1 個解答 · 發問者 ? 1 in 電腦與網際網路 ➔ 程式設計
DO 57 J=1,M1
SX(J)=1.
SXMN(J)=1.
IF(MODE.LT.3) GOTO 57
SX(J)=R(J)
IF(J.NE.1)SXMN(J)=RMN(J)
57 CONTINUE
DO 62 J=2,M2
YCVR(J)=R(J)*YCV(J)
X(J)=YCVR(J)
IF(MODE.LT.3) GOTO 62
請問各位大大程式跑的流程 DO 52 (?) 那行之後
下面的RMN(J)=1.0也是要代入1~7嗎(M1=7)
還是沒有?
然後在DO 57那行後 57那行是CONTINUE 就直接從CONTINUE那行在繼續跑下去
還是 SX(J)=1.
SXMN(J)=1. 這兩個也要跑也要代1~7
1. 你的程式沒 PO 完, 不過那似乎無關你的問題 不管它了
2. 你的問題和你的程式不能配合 我祇好用我的方法來解釋了
57 CONTINUE
有兩種功能
1. 告訴 DO 迴路終止的範圍
2. 讓 GOTO 有跳入的點
你的程式從 "DO 57 " 到 "57 CONTINUE" 之間並沒有跳出的指令
(GOTO 57 還是在迴路的範圍內)
所以迴路一定會做 1 到 M1次
SX(J)=1. 和 SXMN(J)=1. 一定會做 1 到 M1次
IF(MODE.LT.3) GOTO 57
如果 MODE 小於 3, 下面這兩行就跳過不做
SX(J)=R(J)
IF(J.NE.1)SXMN(J)=RMN(J)
如果 MODE 不小於 3
SX(J)=R(J) 一定會做
SXMN(J)=RMN(J) 則是在 J 不等於 1 時才做.
如果有問題, 請來函討論. 不然, 我可能會錯失你再補充的疑點.
2007-02-12 08:33:36 · answer #1 · answered by JJ 7 · 0⤊ 0⤋