Dobrý den,
tohle lze těžko považovat za chybu. Přesnost výpočtu je dána zobrazením
desetinných čísel v 32 bitovém nebo 64 bitovém slově počítače. Pokud se
nepoužijí speciální (a náročné) algoritmy pro práci s čísly s velkou
přesností, tak se s tím nedá mnoho dělat. Proto se také v programování
např. nesmí porovnávat výsledky operací s desetinnými čísly na rovnost a
zachování přesnosti výpočtu v náročných numerických výpočtech je věda
hraničící s uměním.
Jiří Spitz
Ing. Ondřej Navrátil napsal(a):
Dobrý den,
používám OOo 2.2 RC4 z 17.3.07 na W2K SP4 a narazil jsem na nepříjemnou
chybu v součtech a výpočtech za více než 60 řádků. Podmínkou je, že se
musí sčítat čísla s desetinou částí
problém si nasimulujete takto: sloupec A vyplňte čísly 0,1; do B1:=A1,
do B2 := A2+B1 a B2 roztáhněte / rozkopírujte na celý sloupec B s
výjimkou B1. Označte celý sloupec B a nastavte zobrazení 14-ti míst za
desetinnou čárkou. Pokud budete prozorovat stejný problém tak v B61
dostanete číslo 6,09999999999999 namísto 6,1 - to se tam však ukáže
pokud nastavíte zobrazení pouze 13-ti desetinných míst. V buňce B65536
pak bude hodnota 6553,60000000631000.
Problém nastává i při použití sum a kontingenčních tabulek.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]