Više o većoj preciznosti izračuna u aplikacijama Pages, Numbers i Keynote

Nakon što ažurirate aplikacije Pages, Numbers i Keynote, primijetit ćete neznatne promjene rezultata izračuna u dokumentu. To se događa jer najnovija verzija aplikacije iWork sadrži ažuriranje alata za izračun što omogućava najpreciznije rezultate dosada.

U većini formula neće biti vidljivih razlika, ali izračuni koji daju ili upotrebljavaju vrlo male brojke sada će prikazivati još precizniji odgovor.

Primjer 1

U prethodnim verzijama aplikacija Numbers, Pages i Keynote izračun kao što je = 10,0 - 9,8 prikazivat će rezultat 0,199999999999999.

Izmjenom broja decimala koje se prikazuju u ćeliji (od 1 do 14 decimalnih mjesta) očekivani se rezultat može promijeniti tako da iznosi 0,2. Ako povećate broj decimala koje se prikazuju u ćeliji, dobit ćete rezultat 0,199999999999999000000000000000.

To se događa zbog načina interne pohrane decimala koji koristi binarni sustav. Binarni prikazi decimalnih brojeva mogu prouzročiti neznatna odstupanja. Alat za izračun u aplikacijama Pages, Numbers i Keynote oduvijek je primjenjivao napredne tehnike za ispravak odstupanja u izračunima, ali razlika može biti vidljiva u vrlo preciznim izračunima.

Novi alat za izračun mnogo je napredniji od prethodnih verzija jer upotrebljava decimalni prikaz brojeva tijekom cijelog izračuna.

Sada će rezultat za isti izračun = 10,0 - 9,8 biti 0,2. Ako povećate broj prikazanih decimalnih mjesta, dobit ćete rezultat 0,2000000000000000000000000000000.

Primjer 2

U prethodnim verzijama aplikacije Numbers formula ROUND(8.415,2) vraća rezultat 8,41. To se događa i zbog načina na koji binarni sustav interno sprema vrijednosti.

Uz novi alat za izračun, ROUND(8.415,2) vratit će vrijednost 8,42.

Više o binarno kodiranim decimalnim brojevima u odnosu na kodiranje zapisa broja s pomičnom decimalnom točkom

Većina računala brojeve pohranjuje kao niz nula i jedinica, odnosno kao binarne vrijednosti. Postupak koji se naziva kodiranje binarno kodiranih decimalnih brojeva (BCD)  diobne brojeve pretvara u binarne pandane. Pri kodiranju brojeva pomoću postupka BCD, neke se vrijednosti ne mogu prikazati uz potpunu preciznost. Na primjer, 0,2 u binarnom obliku 0,001100110011... (ponavlja se). Vrijednost se mora skratiti da bi se mogla kodirati pomoću BCD-a čime se pohranjena vrijednost neznatno smanjuje. Iako odstupanja koja prouzroči BCD mogu biti neprimjetna, ona postaju sve očitija kada se nakupe u određenim vrstama lančanih izračuna.

Najnovije verzije aplikacija Pages, Numbers i Keynote kodiraju brojeve pomoću 128-bitnog kodiranja zapisa broja s pomičnom decimalnom točkom (DFP). To je mnogo precizniji način za kodiranje decimalnih razlomaka kojim se izbjegava zaokruživanje pogrešaka tipičnih za BCD kodiranje. Nadalje, ažurirani alat za izračun radi izravno s brojevima kodiranima pomoću DFP-a. Vrijednosti u ćelijama tablica bit će točnije, a rezultati formule točnije se izračunavaju.

U većini formula neće biti vidljivih razlika, ali izračuni koji daju ili upotrebljavaju vrlo male brojke sada će prikazivati još precizniji odgovor.

Datum objave: