LibreOffice utrekningspresisjon

Ibuande presisjonsproblem

LibreOffice Calc brukar, som dei fleste reknearka, flyttalsmatematikken som er tilgjengeleg i datamaskinen. Går ein ut frå at dei fleste moderne datamaskinene brukar binær flyttallsaritmetikk med avgrensa presisjon definert i standarden IEEE 754 kan mange desimaltal – for eksempel noko så enkelt som 0,1 – kan ikkje representerast nøyaktig i LibreOffice Calc (som brukar 64-bit dobbelt-presisionstal internt).

Utrekningar med desse tala resulterer nødvendigvis i avrundingsfeil som aukar for kvar utrekning.

Dette er ikkje ein feil i programmet, men er venta og er uunngåeleg utan å bruka komplekse utrekningar som vil føra til urimeleg seinking av farten på utrekningane og kjem såleis ikkje på tale. Bruikarane må ta omsyn til dette og bruka avrundingar og samanlikningar med machine epsilon (or unit roundoff) etter behov.

Eit eksempel med tal:

A

1

31000.99

2

32000.12

3

=A1-A2


Dette vil resultera i -999,129999999997 i A3 i staden for -999,13 som du kanskje venta. (Det kan henda du må auka talet på viste desimalplassar for å sjå dette).

Støtt oss!