二维码 购物车
部落窝在线教育欢迎您!

为什么超过15位后面的数字都显示为0?

 

作者:小窝来源:部落窝教育发布时间:2023-09-28 19:34:32点击:504

分享到:
0
收藏    收藏人气:0人
版权说明: 原创作品,禁止转载。
编按:

为什么超过15位后的数字都显示为0

 

为什么超过15位数字后,后续位数都显示为0

 

图形用户界面, 应用程序, 表格, Excel
描述已自动生成

 

官方答案:Excel 遵循有关如何存储和计算浮点数的 IEEE 754 规范。 因此,Excel 在数字中仅存储 15 个有效位数,并将第十五位后的数字更改为零。

解读:IEEE 754采用二进制存储和运算,双精度下有效位数是53位,换成十进制(lg 2^53),最大有效位数就是15位。

 

你可能会问:难道0就不算有效位数了?

还真是!

在计算机浮点运算规则中,数字前方的0和后方的0都不算有效位数,只有位于1~9之间的0才算有效位数。

所以,不只是平常你看到的超过15位的整数其后面位数变成0,小数也是——只不过小数最后的0被省略了。

譬如:

17位的带小数1234567890.1234567,输入后自动变成1234567890.12345,最后的670取代然后丢掉了;;

19位的纯小数0.012345678901234567,输入后自动变成0.0123456789012345,最后的670取代然后丢掉了。

 

下面汇总Excel中数据在常规格式下的显示规则

 

显示规则1:最大规则——只保留15位有效数字

15位有效数字右侧的数字都自动变成0

对带小数而言,整数位数增加,小数位数就会减少,直到没有小数。从这个意义上说对超过15位整数的数字设置小数保留位数毫无意义。

 

表格
低可信度描述已自动生成

 

规避规则的方法:如果要输入超过15位的数字而不变0

方法1,提前设置单元格格式为文本,然后输入

方法2,首先输入英文的单引号,再输入数字。

 

显示规则2:整数和带小数只要整数部分超过11位就采用科学计数

譬如,输入12位数123456789012,自动显示为1.23457E+11

 

图形用户界面, 文本, 应用程序, 聊天或短信
描述已自动生成

规避规则的方法

自定义单元格格式,格式代码为“0”或者“0.00”。

譬如下图A1:A3中的数字都是123456789012.123,常规格式采用科学计数显示,自定义格式则取消科学计数。

 

表格
描述已自动生成

 

显示规则3 >=0.0001的纯小数,不论多少位都不采用科学计数

不过:

1)单元格中最多按四舍五入显示9位小数

2)编辑栏中最多保留15位有效数

 

图形用户界面
低可信度描述已自动生成

 

显示规则4<0.0001且小数位数大于9位的小数,采用科学计数

小于<0.0001,且小数位数小于等于9的,按实际显示;小数位数大于9的,采用科学计数,小数部分最多四舍五入保留5位小数。

 

表格
低可信度描述已自动生成

 

规避规则的方法

根据需要设置单元格格式为“数值”,并设置需要显示的小数位数。

 

显示规则5:常规下的科学计数,小数部分最多按四舍五入保留5位数字

 

表格
描述已自动生成

 

规避规则的方法

如果需要科学计数的小数位数只保留2位或3位,则更改格式位“科学计数”,并修改小数位数。

 

表格
描述已自动生成

 

 

本文配套的练习课件请加入QQ群:902294808下载。

Excel高手,快速提升工作效率,部落窝教育Excel精品好课任你选择

扫下方二维码关注公众号,可随时随地学习Excel

IMG_256

相关推荐:

Excel浮点运算误差

自定义格式扫盲

用公式自定义条件格式

VLOOKUP经典用法12

版权申明:

本文作者小窝;部落窝教育享有稿件专有使用权。若需转载请联系部落窝教育。