-
Data: 2013-11-14 09:40:05
Temat: Re: ułamki (alternatywnie do floata)
Od: Paweł Kierski <n...@p...net> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2013-11-14 09:12, Tomasz Kaczanowski pisze:
> W dniu 2013-11-14 09:03, Robert Winkler pisze:
>> Ale żeby nie było tak pesymistycznie.
>> Jest jedno zastosowanie gdzie stosowanie liczba zmiennoprzecinkowych
>> jest niedopuszczalne i gdzie od dziesięcioleci stosuje się zapis podobny
>> do proponowanego przez ciebie, czyli liczby stałoprzecinkowe,
>> a domeną są finanse.
>> Z tego powody bazy danych, niektóre języki programowania i biblioteki
>> oferują typy danych rodzaju money czy decimal do przechowywania kwot.
>> Przyjmuje się tam jednak stała wartość mianownika,
>> jedną z wielokrotności liczby 10,
>> na przykład 10000, zapewnia to 4 miejsca po przecinku,
>> co wystarczy aby prawidłowo opisać problem zaokrągleń,
>> przy założeniu że minimalną wartością jaką można operować
>> jest cent, grosz lub ich odpowiednik z innych systemów walutowych.
>
> Niestety tak przygotowane liczby nie przydają się aż tak bardzo w
> zastosowaniach finansowych. Bzdurne ograniczenie do 4 liczb po przecinku
> bierze w łeb, gdy zaczynamy działać na więcej niż jednej walucie, a gdy
> dojdą do tego procenty, są wręcz szkodliwe... Dlatego nie wiem do czego
> można stosować przykładowo TCurrency z Delphi nie przydaje się do
> niczego sensownego, ponad proste działania....
Rozwiązaniem jest float o podstawie 10 a nie 2 + dobra obsługa
zaokrągleń.
Sam używam opakowanego http://speleotrove.com/decimal/ - ma to m.in.
taki ficzer, że 1.23 + 1.27 = 2.50 a nie 2.5
--
Paweł Kierski
n...@p...net
Następne wpisy z tego wątku
- 14.11.13 09:44 firr
- 14.11.13 09:59 Ghost
- 14.11.13 10:03 firr
- 14.11.13 10:22 Robert Winkler
- 14.11.13 10:25 Borneq
- 14.11.13 10:26 g...@g...com
- 14.11.13 10:57 Piotr Chamera
- 14.11.13 11:10 Paweł Kierski
- 14.11.13 11:48 firr
- 14.11.13 16:34 A.L.
- 14.11.13 16:39 A.L.
- 14.11.13 16:47 firr
- 14.11.13 18:11 Ghost
- 14.11.13 19:37 bartekltg
- 14.11.13 19:47 Jordan Szubert
Najnowsze wątki z tej grupy
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-09-12 Z cyklu POJEBANA UE: samochody elektryczne nie mogą być tanie i dobre
- 2024-09-13 dodanie karty graf zawiesza komp
- 2024-09-13 Sezon grzewczy kurła
- 2024-09-13 Warszawa => Spedytor Międzynarodowy <=
- 2024-09-13 Warszawa => Mid Account Manager <=
- 2024-09-13 Warszawa => QA Engineer <=
- 2024-09-13 Białystok => Frontend Developer (Angular area) <=
- 2024-09-13 Warszawa => QA Inżynier <=
- 2024-09-13 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-09-13 Zabrze => Projektant/Expert PHP Laravel (e-commerce) <=
- 2024-09-13 Białystok => Programista Full Stack (.Net Core) <=
- 2024-09-13 Gdańsk => Software .Net Developer <=
- 2024-09-13 Warszawa => Analityk Biznesowo-Systemowy <=
- 2024-09-13 Warszawa => International freight forwarder <=
- 2024-09-13 Warszawa => Senior IT Project Manager <=