[問題] fortran讀數字遇到NaN怎麼辦?

看板Programming作者 (c15)時間18年前 (2007/07/24 19:54), 編輯推噓2(206)
留言8則, 2人參與, 最新討論串1/1
如題 讀數字遇到NaN 例如 do i = 1, 5 read(50,*) val(i) enddo 檔案50裡是 1.000000000E+00 2.000000000E+00 NaN 4.000000000E+00 5.000000000E+00 出現錯誤訊息是 invalid number: incomprehensible list input apparent state: unit 3 named ./ASCII/ascii00000 last format: list io lately reading sequential formatted external IO Aborted 這該如何處理呢 可以遇到NaN 就自動指定成某個數值嗎? 感謝您的熱心回答~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 75.130.31.15

07/24 21:59, , 1F
建議, 先以字串的格式讀進來, 比對
07/24 21:59, 1F

07/24 22:01, , 2F
然後, 再各別處理.如果需要我幫你寫這部份
07/24 22:01, 2F

07/24 22:02, , 3F
的程式, 請 e-mail the file to:
07/24 22:02, 3F

07/24 22:02, , 4F
sjgau4311@gmail.com
07/24 22:02, 4F

07/25 09:55, , 5F
謝謝樓上超級熱心的版友 :)
07/25 09:55, 5F

07/25 09:55, , 6F
用字串讀確實是一方法
07/25 09:55, 6F

07/25 09:57, , 7F
不過我已先用sed取代NaN成一個大數 問題暫時解
07/25 09:57, 7F

07/25 09:58, , 8F
決了 還是感謝您提供方法
07/25 09:58, 8F
※ 編輯: c15 來自: 75.130.31.15 (07/25 10:00)
文章代碼(AID): #16fUYBiq (Programming)
文章代碼(AID): #16fUYBiq (Programming)