看板 Fortran 關於我們 聯絡資訊
這個就讓小弟來貢獻一下, 簡單來說, 如果一個變數你宣告它是整數,那不管你怎運算它都是整數. 如果你宣告real來進行"整數"的運算,那它就會變real, 比方說, A=100 B=2 C=A/B 如果你宣告A,B,C是整數,那C就會得到100%的50. 如果你A,B,C三者皆宣告成real,那C也許就會變成49.99999999999999999999999999999 如此一來,在一些特別的時候,比方說, IF(C.EQ.50)THEN ENDIF 如果你宣告C是real那這個IF就可能會跳過去. 就會出錯囉~ ※ 引述《koala4120 (pure)》之銘言: : 這是有關於 interger跟real的問題 : 因為在書上都有interger跟real分開宣告的狀況出現 : interger宣告整數時所用的 : real是宣告浮點數所用的 : 這樣不是real所涵蓋的範圍比interger還要大 : 如果是這樣 : 那以後就直接宣告real就好了 : 為什麼還要在宣告interger : 不是很麻煩嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 68.40.48.112
agody:請愛用 if(abs(C-50).lt.1.E-6) 雙精確度要改成 1.D-12 03/25 11:18
koala4120:謝謝你的回答,我了解了! 03/25 21:40