(-500)^0.7在Fortran中计算问题
(-500)^0.7在Fortran中计算问题。(-500)^0.7在matlab中的结果为 -45.5510 +62.6955i
在compaq fortran中计算为:
(NaN,0.000000000000000E+000)
Press any key to continue
做甚解呢?
fortran中程序如下:
PROGRAM KK
IMPLICIT NONE
COMPLEX(KIND=8)::A
A=(-500)**0.7
WRITE(*,*)A
END PROGRAM KK
转自:http://www.chinavib.com/forum/redirect.php?tid=92556&goto=lastpost#lastpost 本帖最后由 GWinston 于 2010-5-12 14:15 编辑
A=(-500)**0.7中-500是实数,不是复数
改为:
A=(-500,0)**0.7
即可
当然,你定义A为双精度的,还应该把等号右边数据改成双精度才有意义,否则计算结果有效数字只有前6到7位,后面的不精确。 感谢GWinston 指点,呵呵
:)
页:
[1]