Kalkuleringssnøyaktighet

Innhold

# LibreOffice-kalkuleringssnøyaktighet

## Iboende nøyaktighetsproblem

LibreOffice Calc, akkurat som de fleste andre regnearkprogramvare, bruker flytende-punkts matematiske funksjoner tilgjengelig på maskinvare. Gitt at de fleste moderne maskinvare bruker binær flyttalls-aritmetikk med begrenset presisjon definert i IEEE 754-standarden, mange desimaltall – inkludert som enkel som 0.1 - kan ikke representeres nøyaktig i LibreOffice Calc (som bruker 64-bits dobbelpresisjonstall internt).

Beregninger med disse tallene resultater nødvendigvis i avrundingsfeil, og de akkumuleres med hver beregning.

Dette er ikke en feil, men er forventet og for øyeblikket uunngåelig uten å bruke komplekse beregninger i programvare, noe som vil medføre upassende ytelsesstraff, og er derfor uaktuelt. Brukere må ta hensyn til det, og bruke avrunding og sammenligninger med maskin-epsilon (eller enhetsavrunding) etter behov.

Et eksempel med tall:

| A
1 | 31000.99
2 | 32000.12
3 | =A1-A2

Dette vil resultere i -999.129999999997 i A3, i stedet for forventet -999.13 (det kan hende du må øke viste desimaler i celleformat for å se dette).

Lignende emner

RAWSUBTRACT