以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  数值计算的Bug  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=176214)

--  作者:wsjawm
--  发布时间:2022/4/4 23:04:00
--  数值计算的Bug
今天发现一个很奇怪的事
第一例 设置为双精度小数  
第二例 设置为双精度小数 并设常量为-0.1
第三例 设置为双精度小数
第四例 设置为字符型
第三例 的datacolchanged 事件中写入以下代码
If e.DataCol.name="第三列" Then
    If e.DataRow("第三列")< e.DataRow("第一列")+e.DataRow("第二列") Then
        e.DataRow("第四列")="不合格"
    Else
        e.DataRow("第四列")="合格"
    End If
End If
奇怪的事情是这样发生的
在第一例内输入0.4 第三例内输入0.3
在第一例内输入4.4 第三例内输入4.3
在第一例内输入5.4 第三例内输入5.3
在第一例内输入6.4 第三例内输入3.3
在第一例内输入7.4 第三例内输入7.3
第四例均显示不合格,第一例输入1.4,2.4,3.4,8.4,9.4,10.4,11.4等等对应的第三例输入1.3,2.3,3.3,8.3,9.3,10.3,11.3均显示正常的合格,想不明白怎么回事,求解???


--  作者:有点蓝
--  发布时间:2022/4/5 21:37:00
--  
改为高精度:http://www.foxtable.com/webhelp/topics/1829.htm