看板 Fortran 關於我們 聯絡資訊
程式在執行的時候有時候, 某個數會出現 "NaN"的訊息, 但是出現這訊息時 表示這次的執行失敗了, 所以會想在程式中間加一個類似於 if else 的部份, 讓它中途發現就 goto 回去重跑, 但是當 某數為 NaN 時就不是一個數了, 要如何讓它判斷呢 ? 例如我試了一下: 假如 a 是 real, 但 a 最後的訊息是 NaN 於是我想: if (a>-1 .and. a<1) then goto 100 (100 表示後面繼續執行的某行代號) else goto 10 (10 表示可以重新生成 a 的行代號) end 想法是: 反正 a是 NaN, 那麼範圍一定不在 - 1到 1 之間, 所以 一定會 goto 10 重新得到 a. 測試結果是程式看不懂 , 當 a 出現 NaN 時, 不會 goto 100 和 goto 10, 直接 出現了錯誤訊息. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.225.32.101
itee:isnan 04/25 20:54
charlesdc:樓上什麼意思? 還有無限大跟負無限大的話要怎解? 04/26 00:13