maths.free › Numerical Methods › Floating point and error

Floating point and error

Why 0.1 + 0.2 ≠ 0.3 on a computer, and how error propagates.

Computers store numbers in binary with ~16 significant digits; 0.1 is not representable exactly. Round-off accumulates, and subtracting nearly equal numbers destroys digits (cancellation). Picture it: 255 in binary is 11111111, and 0.1 in binary never terminates. Think it: a stable algorithm keeps error growth linear; conditioning is a property of the problem, stability of the method.

工作范例 · 0.1 + 0.2

Evaluate 0.1 + 0.2

0.1 + 0.2

一步

  1. 0.3 = \frac{3}{10}

    Add: 0.1 + 0.2 = 3/10.

  2. \frac{3}{10} = 0.3

    Simplify.

发送答案
0.3

现在轮到你 选择问题, 输入或绘制您自己的 。 每一步, 图片, 答案隐藏到您询问 。

保持你自己的工作

免费账户在每一课上都添加注解, 记录你完成的, 在一个地方解决的, 以及您可以询问的关于此页的导师。 数学本身向每个人开放, 是否签名 。

签名上签名 登录

此处所用符号

输入完整定义、图片和其中每个字母的含义的符号。

如何: Floating point and error

  1. Add: 0.1 + 0.2 = 3/10.
  2. Simplify.

人们对人们提出的问题

Why not just solve exactly?

Most equations have no closed-form solution at all, and many that do are unusable in practice. A numerical method delivers as many correct digits as you need, and a good one tells you how many that is.

Why can Newton's method fail?

If it starts where the tangent is nearly flat it shoots far away; near a repeated root it slows to a crawl; and with several roots it may land on the wrong one. A bracketing method like bisection is slower but cannot fail.

更多 Numerical Methods