关于【吐槽贴】一言难尽的Round的一些看法

懒得批爆
懒得批爆

WPS寻令官 | WPS产品体验官

您没看错,这不是回复贴,这是对吐槽帖的【看法】

📌

原帖地址:https://bbs.wps.cn/topic/31968

这真的只是回应吐槽贴。


就这个问题,以前在一些计算中确实会出现这个奇怪的现象,而且昨天媳妇儿才跟我吐槽了这个槽点造成的损失。

以前工作中也遇到过这种情况,我的解决办法是拆分清单,然后去凑这个数据。


😣

今天就这个问题找到了ROUND函数的厂家(友商)讨要个说法,这是什么原因造成的

随后厂家很快的给出了答复:

这篇文章的地址:(鉴于社区公告https://bbs.wps.cn/topic/21585,有兴趣的朋友可以在本帖末尾处找到本帖的金山文档地址,文章地址在其中可以找到)。

原来不仅仅是ROUND函数,而是所有的浮点运算得到的结果可能都不准确。

由于存在舍入或数据截断,这可能会影响某些数字或公式的结果。

用厂家的话说这是设计引用规范的缺陷造成的,原因如下:

Microsoft Excel 围绕 IEEE 754 规范进行设计,以确定它如何存储和计算浮点数。 IEEE 是电气与电子工程师协会,一个确定计算机软件和硬件标准的国际机构。 754 规范是一种非常普遍采用的规范,它介绍了如何在二进制计算机中存储浮点数。 它很受欢迎,因为它允许以合理的空间存储浮点数,并使计算能够相对快速地进行。 754 标准用于当今几乎所有实现浮点数学的基于 PC 的微处理器的浮点运算单元和数字数据处理器,包括 Intel、Motorola、Sun 和 MIPS 处理器。
存储数字时,对应的二进制数可以表示每个数字或小数。 例如,分数 1/10 在十进制记数制中可以表示为 0.1。 但是,以二进制格式的相同数字将成为以下重复的二进制小数:
0001100110011100110011(等)
此操作可以无限重复。 此数字不能在限定(有限)的空间里表示。 因此,存储此数字时,会向下舍入大约 -2.8E-17。

这个坑爹的规范还有一些限制:

下面就对厂家的说明直接截图了,面得被人说直接复制粘贴在水贴。

看样子厂家也明白了这个问题,出现#NUM!的错误提示,有可能是因为这个规范造成的数字溢出,对EXCEL来说可存储的最大数为1.79769313486232E+308这是多少我不知道,反正很大),可以存储的最小正数为 2.2250738585072E-308这是多少我也不知道,反正很小)。

不知道WPS设计可存储的最大数和最小正数是多少??

厂家对于浮点运算精度的解释如下:

厂家对计算精度错误Excel 提供两种补偿舍入误差的基本方法:ROUND 函数和以显示精度为准将精度设为所显示的精度工作簿选项。

WPS对更正精度错误补偿舍入误差的方法是什么?

最后厂家提到了这个规范的误差值是多少:

IEEE 754 规范对任意数字都没有任何特殊限制。 它将可存储的内容存储在尾数中,并截断其余部分。 这将导致存储时出现大约 -2.8E-17 或 0.000000000000000028 的误差。

浮点数和IEEE 754 规范详细信息:(鉴于社区公告https://bbs.wps.cn/topic/21585,有兴趣的朋友可以在本帖末尾处找到本帖的金山文档地址,详细地址在其中可以找到)。

该页面基本为全篇英文,借助浏览器翻译插件应该不难阅读。

欢迎自行查阅。

借此,总算知道了造成误差的原因。

厂家对其造成误差提出了补偿方案,不知道WPS对此误差的补偿方案是什么。


这里是本帖末尾:

👋

【金山文档 | WPS云文档】 【回复吐槽】 一言难尽的Round

https://kdocs.cn/l/cayto9tIbhAH

四川省
浏览 1487
收藏
7
分享
7 +1
11
+1
全部评论 11
 
清华学弟任泽岩
清华学弟任泽岩

创作者俱乐部成员

这属于隐藏字符吗 需要复制粘贴出来才能看到~
· 辽宁省
1
回复
懒得批爆
懒得批爆

WPS寻令官 | WPS产品体验官

建议换个浏览器,我在手机上用Chrome打开没问题
· 四川省
回复
 
胡思乱想
非常厉害了!
· 广东省
回复
 
wils
wils

创作者俱乐部成员

感谢回帖 搜了一下,wps也有那个选项,以显示精度为准,但这样会导致计算中的其他部分误差更大。。。 所以在想,是不是只保留数据表,所有计算都用宏,就像吐槽帖提到的,全用decimal类型进行计算,才能避免这种情况,如果只是自定义公式,还是避免不了传过来的数是浮点数
· 广东省
回复
懒得批爆
懒得批爆

WPS寻令官 | WPS产品体验官

我猜 知道round的人比知道decimal的人多吧 友商是在考虑通用性,没有考虑专用性。
· 四川省
回复
 
ice y
ice y

WPS产品体验官

强,社区没你不可
· 四川省
回复