为什么0.1+0.2=0.3是false,而0.1+0.5=0.6是true

1.浮点数 精度问题

0.1+0.2实际的计算结果不是精确的0.3,这是因为十进制的0.1和0.2在二进制中表示的是无限循环的数字,因此他们的精确表示会有一些近似误差

2.计算结果的近似

0.1+0.5实际计算结果是0.6,没有出现像0.1+0.2那样的精度问题

这是因为在计算机中使用二进制来表示小数时可能会导致精度问题。在二进制中,0.1 和 0.2 并不能精确表示为有限的位数,因此在计算它们的和时可能会有舍入误差,最终得到的结果可能略微偏离期望的值。

当计算机尝试将这些二进制数相加时,舍入误差会导致最终结果与理想值略有偏差,因此 0.1 + 0.2 不精确等于 0.3。

但是,对于 0.1 和 0.5 的加法,它们的二进制表示是精确的。0.1 的二进制表示为无限循环小数,但是对于计算机而言,它能够以有限的精度表示这个数,并且与理想值非常接近。因此,0.1 + 0.5 的结果是精确等于 0.6 的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值