【发布时间】:2020-08-26 21:01:28
【问题描述】:
我正在编写一个程序来处理相互添加浮点数并发现一些奇怪的东西。
例子
---INPUT---
print(1+0.1)
print(1-0.1)
---OUTPUT---
1.10000000000001
0.99999999999999
为什么会发生这种情况,我该如何阻止它?
【问题讨论】:
-
@roy 对我没有帮助,在我发布之前已经看过它
-
那你为什么不在你的问题中提到这一点呢? 展示你的研究。典型的骗子是stackoverflow.com/q/588004/3001761。
-
关于“我没有复制和粘贴任何东西,但我有点夸大其词”:在问题中呈现不正确的数据并不是获得正确答案的正确技术,并且会破坏问题的可能性将来会为任何其他读者服务。 Stack Overflow 旨在为所有人提供问题和答案的持久存储库,而不是作为您的个人教学服务。
-
@DanHowe:我们收到各种知识水平的问题和读者。不正确的数据可能是提问者概念错误、他们误报数据、误读数据或其他问题的迹象。呈现不正确数据的读者可能不具备识别和补偿数据所需的知识。如果您不保持价值正确性并提供不正确的数据,则可能会被否决。
标签: python math floating-point python-3.7 arithmetic-expressions