ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: sunnet

[已解决] 浮点运算误差带来的看不懂

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2008-4-16 11:01 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2008-4-16 15:18 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2008-4-16 16:32 | 显示全部楼层
QUOTE:
以下是引用sunnet在2002-8-22 13:02:00的发言:
A1=(4.1-4.2)+1;         或者 (5.1-5.2)+1、(6.1.-6.2)+1、(7.1.-7.2)+1
B2=0.9
C1=IF(A1=B1,"相等","不等")

结果是“不等”!

怎么回事?

想听听各位的说法。

还有一个现象:

先设一下数据结构 A1=(X.m-X.n)+1

1.  当X=0,1,2,3;8~15; m=1,n=2时,等于0.9成立

即:A1=(0.1-0.2)+1、(1.1-1.2)+1、(2.1-2.2)+1、(3.1-3.2)+1   =0.9   -->整数部分二进制1-2位

A1=(8.1-8.2)+1、(9.1-9.2)+1、(10.1-10.2)+1、(11.1-11.2)+1   =0.9     (直到15都可以) -->整数部分二进制4位
。。。。。。16以上都不等于0.9     -->整数部分二进制4位以上

2. 当X=4~7; m=1,n=2时,等于0.9不成立

3. 当m=4,n=5时,等于0.9成立

4. 当m=3,n=4时,等于0.9不成立

5. 当m=1,n=3时,等于0.8成立

。。。。。。

不完全测试

这应该与浮点数的存储机制有关系。

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2008-4-24 15:21 | 显示全部楼层

我弄上市公司的财务报表时也遇到这些情况。

15位的数值大把,只有加上round啰

TA的精华主题

TA的得分主题

发表于 2008-4-28 20:44 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
天啊!

TA的精华主题

TA的得分主题

发表于 2008-4-28 21:24 | 显示全部楼层

浮点误差

 

偶也是受害者

见过许多类似的帖子,偶也没有时间仔细研究,至今见到这个问题还是比较棘手

招唤gntvw

 

或更多高人来多多论述论述

TA的精华主题

TA的得分主题

发表于 2008-4-28 21:26 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2003-12-13 23:13 | 显示全部楼层
不要说XP,2003也是一样的! 1.1-1.2也存在此问题. 在A1输入=ROW(A1)/10-ROW(A2)/10, 设定小数位16位,往下填充,看看结果就知道了. 到了40行以下,就全部不对了!

TA的精华主题

TA的得分主题

发表于 2003-12-13 23:42 | 显示全部楼层
其实说奇怪也不奇怪,EXCEL本来就只能输入15位的数字,如果超过15位,15位以后都变成了0(但前面的0不算),问题的根源其实也在这儿吧.

TA的精华主题

TA的得分主题

发表于 2002-8-23 22:40 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
Please read http://support.microsoft.com/default.aspx?scid=KB;EN-US;q78113&
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-5-21 10:02 , Processed in 0.036196 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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