水木社区手机版
首页
|版面-Python的自由天空(Python)|
新版wap站已上线
返回
1/1
|
转到
主题:大佬解释一下,为何0.1+0.2的结果比0.3大?
5楼
|
poggy
|
2023-11-07 18:34:38
|
展开
【 在 feng321 的大作中提到: 】
: a=0.1
: b=0.2
: c=a+b
: ...................
不懂的话, 找一本教程好好学习
或者问知乎, 太基础的问题, 勤快点就不是问题
https://zhuanlan.zhihu.com/p/580191161
--
FROM 124.126.2.*
10楼
|
poggy
|
2023-11-07 23:42:10
|
展开
【 在 feng321 的大作中提到: 】
: 原来,十进制小数,要用32位的二进制整数来表示。参考这个图。其实关键要看最后一位是0还是1?判断的原则是:看用哪个,距离实际值近。我已经把这个搞懂了。参考:
https://www.h-schmidt.net/FloatConverter/IEEE754.html
: [upload=1][/upload]
你只有明白了, 什么是模拟,什么是数字,
为什么是二进制, 为什么计算机的基础数学是离散数学,不是高数。
你计算机才算是入门了。
--
FROM 124.126.2.*
57楼
|
poggy
|
2023-11-13 21:45:35
|
展开
【 在 feng321 的大作中提到: 】
: 问题是,0.1+0.2 为什么是等于 0.30000000000000004?
: 不是0.3000000000000004?
: 也不是 0.300000000000000004?
: ...................
这次要批评你了, 我回复你的地方给你了链接, 里面有详细的计算过程
说明你没看
https://zhuanlan.zhihu.com/p/580191161
用通俗一点的话给你解释,
数学上的实数, 实际规定进制和精度以后, 是用进制为底的多项式逼近的。
如果, 两个进制没有倍数关系, 在两个进制直接转换, 会导致逼近有符合精度的可忽略误差,
这种误差在做四则运算的时候, 可能会导致累积到精度以内而不可忽略。
十进制, 第K位小数值, 可以看作精度是 10的-k次方分之一的一位小数
二进制, 第K位小数值, 可以看作精度是 2的-k次方分之一的一位小数,一个十进制的小数位,需要多个二进制和的形式逼近。
--
FROM 115.171.245.*
1/1
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版