弄不懂啊.........
為何 25.4*1.5 與 38.1 不相等?
即 print 25.4*1.5=38.1 為False
可是 1.5*1.5 = 2.25 為 True
[解决办法]
数据类型的问题
print (25.4*1.5)-38.1
最好转到同一类型比较
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码)
最新版本:20070212
http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
[解决办法]
朋友,请注意您所使用的数据类型
[解决办法]
1.5*1.5 是vb自动在转换类型
[解决办法]
print round(25.4*1.5,1)=38.1
试试看
[解决办法]
我认为是数据类型问题:
我做以下试验:
Dim a As Currency
Dim b As Currency
a = 1.4 * 1.4
b = 1.96
Debug.Print a = b
结果是:true
另外:
Dim a
Dim b
a = 1.4 * 1.4
b = 1.96
Debug.Print a = b
结果为:false
[解决办法]
这是由于计算机无法准确地用二进制来表示浮点数造成的。
? 1.4 *1.4 - 1.96
-2.1315414711065E-16
这类比较一般需要这样来进行:
? abs(1.4 *1.4 - 1.96) < 1E-10
[解决办法]
支持jadeluo(秀峰) ( )