Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 802|回复: 3

[已解决]请问怎么比较多精度浮点计算在误差范围内

[复制链接]
发表于 2022-6-23 13:19 | 显示全部楼层 |阅读模式
本帖最后由 釜底抽薪 于 2022-6-23 19:46 编辑

比如  A=31.25423656554
        B=56.54226689648
        C=87.79651346202
   这个误差范围值是 正负 0.00001  小数5位
    A  B 是数据是变量   C是固定的
if (round(a,5)+round(B,5))-ROUND(C,) =   +-0.00001               then


不知道明确的运算符号
最佳答案
2022-6-24 09:53
本帖最后由 高 于 2022-6-24 09:58 编辑

一、If Abs(Round(a, 5) + Round(B, 5) - Round(C, 5)) < 0.00001 Then   (加上一个abs)
二、If Round(a, 5) + Round(B, 5) - Round(C, 5) < 0.00001 or  Round(a, 5) + Round(B, 5) - Round(C, 5) > -0.00001 Then (用一个or语句 )
 楼主| 发表于 2022-6-23 19:45 | 显示全部楼层
回复

使用道具 举报

发表于 2022-6-24 09:53 | 显示全部楼层    本楼为最佳答案   
本帖最后由 高 于 2022-6-24 09:58 编辑

一、If Abs(Round(a, 5) + Round(B, 5) - Round(C, 5)) < 0.00001 Then   (加上一个abs)
二、If Round(a, 5) + Round(B, 5) - Round(C, 5) < 0.00001 or  Round(a, 5) + Round(B, 5) - Round(C, 5) > -0.00001 Then (用一个or语句 )
回复

使用道具 举报

 楼主| 发表于 2022-6-24 09:59 | 显示全部楼层
本帖最后由 釜底抽薪 于 2022-6-24 10:02 编辑
高 发表于 2022-6-24 09:53
一、If Abs(Round(a, 5) + Round(B, 5) - Round(C, 5)) < 0.00001 Then   (加上一个abs)
二、If Round(a,  ...

感谢,当时一下卡到这里了,过一会 我想到了绝对值了  用了ABS
or 语句有可能要出错
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-25 09:52 , Processed in 0.835318 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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