|
我是按照公式来写一部分判断的代码。
原公式大意是这样:(1)变量a=0,执行公式1,计算变量S。(2)变量a>0,执行公式2,计算变量S。(3)变量a<0,执行公式3,计算变量S。
简单来讲,就是根据变量a的情况,选择不同公式来计算变量S。
我感觉代码里,似乎并不能直接写成下面这样:
real(kind=4) a, S
IF(a==0.0)Then
S=...(省略此处的公式)
ElseIF(a>0.0)Then
S=...(省略此处的公式)
ElseIF(a<0.0)Then
S=...(省略此处的公式)
End IF
就想了解一下,大家在遇到这种情况时,是如何做这样的比较的?是将变量a如何与0做比较的?real类型不可能恰好等于0,感觉严格等于0的情况似乎永远不可能成立。看到有些说,在C里是用 a 与1E-5做比较,a的绝对值小于1E-5的话,就认为a=0了,请问大家在Fortran里有没有遇到这种情况?是采用哪种方法?
|
|