看板 ACMCLUB 關於我們 聯絡資訊
※ 引述《beagle (紅茶犬)》之銘言: : ※ 引述《sophialiege.bbs@ptt2.cc (累)》之銘言: : : read 6, i,k,j : : 99 if(i .lt. j)goto 33 : : goto 55 : : 33 i=j : : goto 99 : : 55 k=j+2 : : stop : read 6, i, k, j; : while (i < j) { : i = j; : } : k = j + 2; : : read6,i,k,j : : if(i.lt.j)goto12345 : : 77 k=j+1 : : goto5555 : : 12345 i=j : : if(i.lt.j)goto12345 : : goto77 : : 5555 stop : read6,i,k,j; : while (i < j) { : i = j; : } : k = j + 1; : : 不管什麼測資,在黃綠兩段程式中都會用同樣的順序經過一致的程式碼. : : 我實在不懂哪不一樣,應該沒有看錯吧? : : (goto statement 跟 label id 可以 ignore) : 我用 pseudo code 重排一遍, 改成 C-like 的 while 和 if-else 比較好懂... : 我不知道 fortran 裡面 read6, 和 read 6, 一樣不一樣, 這是一個不同點, : 此外一個寫 k = j + 1 一個寫 k = j + 2 所以最後 k 一定會差 1 ... ...... k = j + 1 被我看成 k = j + 2 了 真是太蠢了 謝謝學長 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.250.175