

Datový typ pro práci s penězi
Ahoj,
kvůli binární chybě při počítání s desetinnými čísly by se měl hlavně při práci s penězi používat speciální datový typ, který tuším ve většině jazyků je, nebo existuje jiná náhrada. Ten speciální datový typ je Decimal.
Běžně tedy ve floatu např. 0.2 + 0.1 = 0.30000000000000004 a u Decimal to je správně Decimal('0.2') + Decimal('0.1') = Decimal('0.3')
V mnoha knihách, článcích a i od lidí mám právě informaci, že typ Decimal by se měl používat jen při té práci s peněžními částkami, kde je potřeba mít opravdu přesné počty.
Nevím, jestli na to mám špatný pohled, ale já bych nejradši ten datový typ Decimal používal pořád, ať už pro práci s penězi, tak i pro obyčejné počty, protože ani při běžné práci s počty se mi nelíbí, že se občas ta binární chyba projeví na výsledku a já pak musím zaokrouhlovat. Podporuje Decimal všechny matematické operace jako obyčejný float, nebo je něco, co se s Decimal nedá dělat?
Nebo je to špatný návyk to používat?
Věnuju se programování krátkou dobu, takže budu rád za vaše rady a zkušenosti s tím.
Díky.
Pokud pocitas s penezma na halere (procenta, urokovani) a delas komercni appku, tak vzdy Decimal...
To urcite ano, pokud nejde o nejakou zvlaste oduvodnenou vyjimku.
Ale IMHO otazka znela jinak - zda Decimal uplne vsude jako univerzalni supercool datovy typ, nejen u penez?
A na to je odpoved, ze nekde to fungovat bude, nekde jen castecne a s omezenima a nekde vubec ne.
Ok, díky za reakce.