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.

Exemplo resolvido · 0.1 + 0.2

Evaluate 0.1 + 0.2

0.1 + 0.2

Passo a passo

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

    Add: 0.1 + 0.2 = 3/10.

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

    Simplify.

Revelar a resposta
0.3

Agora tu Escolha um problema, ou digite ou desenhe o seu próprio. Cada passo, uma imagem, a resposta escondida até que você pergunte.

Guarde o seu próprio trabalho

Uma conta gratuita adiciona notas sobre cada lição, um registro do que você terminou, seus problemas resolvidos em um lugar, e um tutor que você pode perguntar sobre esta página. A própria matemática está aberta a todos, assinada ou não.

Inscrever-se Login

Símbolos usados aqui

Toque em qualquer símbolo para a definição completa, uma imagem e o que cada letra nela significa.

Como: Floating point and error

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

Perguntas que as pessoas fazem

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.

Mais em Numerical Methods