为什么我使用Fortran中的“DMOD”和Python中的“numpy.rements”得到不同的结果
用Fortran语言:
DOUBLE PRECISION aaa,bbb
aaa = 2.11561
bbb = 1.19841
out = DMOD(aaa, bbb)
print*,out
我得到:0.917199850
在python中:
import numpy as np
print(np.remainder(2.11561,1.19841))
我得到:0.9172000000000002
Tags:
如果您想在Fortran中获得双精度,那么也需要以这种方式编写常量。您可以通过使用
_dp
后缀这样做:或者您可以在数字中使用
d
:使用
e
表示单精度,d
表示双精度。默认为单精度。。。即使变量是双精度的,常数也可能是单精度的!在C中也是这样不同之处在于Python和C默认使用双精度,而您必须要求单精度
相关问题 更多 >
编程相关推荐