Precisión de cálculos en LibreOffice

Problema de precisión inherente

LibreOffice Calc, al igual que la mayoría de los programas de hojas de cálculo, utiliza las capacidades matemáticas de punto flotante disponibles en el hardware. Dado que la mayoría del hardware contemporáneo utiliza la aritmética binaria de punto flotante con una precisión limitada definida en el estándar IEEE 754, muchos números decimales -incluso tan simples como 0,1- no pueden representarse con precisión en LibreOffice Calc (que utiliza internamente números de doble precisión de 64 bits).

Los cálculos con esos números necesariamente resultan en errores de redondeo, y éstos se acumulan con cada cálculo.

No se trata de un error, sino que es algo esperado y actualmente inevitable si no se utilizan cálculos complejos en el software, lo que supondría una penalización inadecuada del rendimiento, y por tanto está fuera de lugar. Los usuarios deben tenerlo en cuenta y utilizar el redondeo y las comparaciones con epsilon de la maquina (o redondeo de unidades) según sea necesario.

Un ejemplo con números:

A

1

31000.99

2

32000.12

3

=A1-A2


Esto dará como resultado -999.129999999997 en A3, en lugar del esperado -999.13 (puede que tengas que aumentar los decimales mostrados en el formato de celda para ver esto).

¡Necesitamos su ayuda!