Precisión dos cálculos no LibreOffice

O problema inherente á precisión

O Calco do LibreOffice, o mesmo que a maioría do software de follas de cálculo, emprega recursos de matemáticas de vírgula flutuante dispoñíbeis no hardware. Dado que a maioría do hardware contemporáneo emprega aritmética binaria de vírgula flutuante con precisión limitada tal e como se define no estándar IEEE 754, non é posíbel representar moitos números decimais, incluídos algúns tan simples como 0,1, no Calc do LibreOffice (que emprega números de dupla precisión de 64 bits internamente).

Os cálculos con eses números necesariamente resultan en erros de arredondamento, e eses erros acumúlanse con cada cálculo subsecuente.

Isto non é un erro de programación, senón que é algo esperado e actualmente inevitábel sen realizar cálculos complexos con software, co que incorrería en penalizacións de desempeño inadecuadas, polo que non se considera. Os usuarios deben saber isto e empregar os arredondamentos e as comparacións con épsilon da máquina (ou arrendamento ás unidades), segundo se precisar.

Un exemplo con números:

A

1

31000.99

2

32000.12

3

=A1-A2


Isto resulta en -999,129999999997 en A3, no canto do -999,13 agardado (pode que haxa que aumentar o número de cifras decimais que se mostran no formato de cela para velo).

Precisamos da súa axuda!