首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

弄不懂啊解决思路

2012-01-18 
弄不懂啊.........為何 25.4*1.5與 38.1不相等?即 print25.4*1.538.1為False可是 1.5*1.52.25為True[解

弄不懂啊.........
為何 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(秀峰) ( )

热点排行