作者dv6000 (dv6000)
看板Fortran
標題Re: [問題] 又有問題了
時間Wed Mar 25 01:13:33 2009
這個就讓小弟來貢獻一下,
簡單來說,
如果一個變數你宣告它是整數,那不管你怎運算它都是整數.
如果你宣告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
1F:推 agody:請愛用 if(abs(C-50).lt.1.E-6) 雙精確度要改成 1.D-12 03/25 11:18
2F:推 koala4120:謝謝你的回答,我了解了! 03/25 21:40