Tizedes kerekítés

Táblázatkezelő
Szergio
Önkéntesek
Hozzászólások: 71
Csatlakozott: 2008. március 13., csütörtök 16:11

Tizedes kerekítés

Hozzászólás Szerző: Szergio »

Sziasztok!
Egy olyan problémám volna, hogy:
- van egy nagy táblázatom, amelyben korábban négy tizedes pontossággal történt a számolás
- most arra volna szükség, hogy ez csak két tizedes pontossággal történjen (tehát a számok is, amelyek eddig négy tizedesnyi pontossággal voltak beírva, csak két tizedesnyivel maradjanak ... s nyilván a szorzások is így történjenek)
- sajnos hiába adom számformátumnál a tizedesjegynek a 2-öt, a Calc továbbra is négy tizedessel számol ... s így viszont eltérés adódik.

Mellékelek egy példát.

Van esetleg valami lehetőség arra, hogy az egész táblázatban megváltoztassam ezt? Vagy minden számot át kell írnom, hogy csak két tizedes legyen?
Csatolmányok
tizedes_pelda.ods
(17.56 KiB) Letöltve 40 alkalommal.
Ubuntu 20.04 • Libreoffice 7.6 • Windows 11
Avatar
Zizi64
Globális moderátorok
Hozzászólások: 4071
Csatlakozott: 2008. november 12., szerda 21:22
Tartózkodási hely: Budapest

Re: Tizedes kerekítés

Hozzászólás Szerző: Zizi64 »

- sajnos hiába adom számformátumnál a tizedesjegynek a 2-öt, a Calc továbbra is négy tizedessel számol ... s így viszont eltérés adódik.
A lebegőpontos, binárisan ábrázolt számok esetében (ahogy a decimálisan ábrázolt számok esetében is!) mindig lesz némely műveletek után eltérés a VALÓSÁGHOZ képest. Ahogy a tizedes törtek nem képesek PONTOSAN ábrázolni az 1/3 művelet eredményét, úgy a binárisan ábrázoltak sem képesek minden művelet eredményét TÖKÉLETESEN ábrázolni. Csak éppen más eredményeknél történik a "hiba": ahogy a 0,33333333333333... egy végtelen tizedes tört, úgy az 1/10 (dec) = 0,1 (dec) lesz ugyan, de a binárisan ábrázolt érték az egy végtelen tizedes törtet ad, amit a Calc csak kerekítve képes megjeleníteni (Ez nem LO/AOO specifikus dolog, ez általános matematikai/számítástechnikai probléma.)


Van egyébként olyan paraméter, amit beállíthatsz az Eszközök - Beállítások - LibreOffice Calc - Számítás - Általános számítások-ban:
"A belső pontosság a kijelzett pontossággal egyezzen meg".
Ez a paraméter viszont az egész Calc működésére vonatkozik (nem csupán néhány így beállított cellára!), tehát ahol mégis pontosabban akarsz számolni, ott a megfelelő tizedesjegy-számról neked kell gondoskodni a formázás által.

Ekkor el fogja hagyni a kettőn túli tizedes jegyeket a számításban akkor is, ha az OTT VAN valójában a számban, csak épp a formázás miatt nem látszik.
Ez viszont nem fogja megakadályozni a fentebb jelzett matematikai hibát! Úgyhogy ha "PONTOS"-nak látszó eredményeket akarsz, akkor neked kell külön gondoskodni az eredmények kerekítéséről, esetleges beszúrt megjegyzésekről az eredmények pontosságát illetően.

Mindig pontosabb eredményt ad, ha hagyod, hogy a Calc a saját felbontási határáig használt tizedes (kettedes) jegyekkel dolgozzon, és az eredményt (a további számításokhoz már nem használt eredményt) a kívánt tizedesjegy-számra kerekíted és/vagy formázod.
Ha a kiinduló adatokat és részeredményeket manipulálod, akkor az se mindegy, hogy azokat CSAK formázod, vagy CSAK kerekíted; vagy formázod ÉS kerekíted...
Sok sikert!
Kovács Tibor (W10x64Pro/W7x64P: 7.5.8;
winPenPack/PortableApps: LO3.3.1-7.6.2, AOO4.1.14
Ha megoldódott a probléma, jelöld a témaindító hozzászólásod címének szerkesztésével. Írd elé: [Megoldva].
Válasz küldése