找回密码
 加入
搜索
查看: 1801|回复: 4

[AU3基础] 【已解决】奇怪的计算公式

[复制链接]
发表于 2013-1-20 01:01:12 | 显示全部楼层 |阅读模式
本帖最后由 koflion 于 2013-1-21 20:15 编辑

为什么是这样的结果,按道理说其结果应该是0才对,是我小学没毕业么??



如果被减数+1,则结果=1.00000000000023。。。真不知道是哪里出的问题。

求大神帮忙看看!!
Dim $HISFL[9] = [1998.12, 1610.65, 387.47, 0, 0, 0, 1000, 612.53, 0], $YBFL[5] = [1998.12,0 , 1610.65, 0, 0], $CE[3] = [0, 0, 0], $TCZF = 0, $GRZF = 0
$TCZF = $YBFL[1] + $YBFL[2] + $YBFL[3] + $YBFL[4]
$GRZF = $YBFL[0] - ($YBFL[1] + $YBFL[2] + $YBFL[3] + $YBFL[4])
$CE[0] = $HISFL[0] - $YBFL[0]
$CE[1] = $HISFL[1] - $TCZF
$CE[2] = $HISFL[2] - $GRZF
MsgBox(262208, $CE[2], $HISFL[2] & "-" & $GRZF & "=" & $HISFL[2] - $GRZF)


MsgBox(262208, $CE[2], 387.47 & "-" & 1998.12-(0+1610.65+0+0) & "=" & 387.47  - (1998.12-(0+1610.65+0+0)))
即便不使用数组,结果也是一样。。我确实没明白到底是哪里计算错误了,同样的公式使用excel计算是正确的。


好吧。。初中没好好学,高中没毕业。。。没想到是浮点运算造成的。。额

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2013-1-20 01:02:21 | 显示全部楼层
补充句:
程序版本:  3.0.3
发表于 2013-1-20 01:13:22 | 显示全部楼层
回复 1# koflion


浮点运算带来的误差,没看到已经非常接近0了吗??后面有个-13次方哦
不是AU的问题
如果需要准确值,可以转成整数计算完后再转回来
 楼主| 发表于 2013-1-20 01:20:01 | 显示全部楼层
回复  koflion


浮点运算带来的误差,没看到已经非常接近0了吗??后面有个-13次方哦
不是AU的问题
如果 ...
annybaby 发表于 2013-1-20 01:13


谢谢了。。话说你很厉害啊。。到处都能看到你的解答。。。
MsgBox(262208, $CE[2], $HISFL[2] & "-" & $GRZF & "=" & Round($HISFL[2] - $GRZF),2)
这样也确实为0.。。。不过那个-13次方你是怎么看出来的??
发表于 2013-1-20 01:22:23 | 显示全部楼层
回复 4# koflion


    你上的图啊,上面不是明摆着有个"e"在那吗??

厉害啥呀,不过无所事事,到处逛而已~~
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-29 13:15 , Processed in 0.097943 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表