作者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