-
Data: 2013-11-14 19:48:10
Temat: Re: ułamki (alternatywnie do floata)
Od: bartekltg <b...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2013-11-14 09:40, Paweł Kierski pisze:
> 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ń.
Float to 7 cyfr dziesiętnych.
Roczne zarobki posła i już jesteś na granicy zgubienia grosika.
Z budżetu Polski podprowadziłeś 34złote ;-)
> 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
Ciekawe. Ale czemu nie użyć liczby całkowitej?
Przewalutowania i procenty i tak liczy się do złotówki/dolara czy
grosza/centa, bo liczy się wg przepisów.
pzdr
bartekltg
Następne wpisy z tego wątku
- 14.11.13 19:59 bartekltg
- 14.11.13 20:25 bartekltg
- 14.11.13 23:22 A.L.
- 15.11.13 00:03 bartekltg
- 15.11.13 08:07 Paweł Kierski
- 15.11.13 08:09 Tomasz Kaczanowski
- 15.11.13 08:13 Tomasz Kaczanowski
- 15.11.13 08:20 Paweł Kierski
- 15.11.13 09:07 firr
- 15.11.13 09:59 Paweł Kierski
- 15.11.13 12:07 Ghost
- 15.11.13 12:13 Tomasz Kaczanowski
- 15.11.13 12:24 Ghost
- 15.11.13 12:32 Tomasz Kaczanowski
- 15.11.13 13:03 Ghost
Najnowsze wątki z tej grupy
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- 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
Najnowsze wątki
- 2025-01-04 Katowice => Key Account Manager (ERP) <=
- 2025-01-03 Problem z odczytem karty CF
- 2025-01-03 Jazda z Warszawy do Krakowa teslą
- 2025-01-03 Wrocław => Konsultant Wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-01-03 Warszawa => International Freight Forwarder <=
- 2025-01-03 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-01-03 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-03 Beztłumikowcy
- 2025-01-03 Lublin => Delphi Programmer <=
- 2025-01-03 Lublin => Programista Delphi <=
- 2025-01-03 [OT] nowe osoby w grupach?
- 2025-01-03 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-01-03 Warszawa => Developer .NET (mid) <=
- 2025-01-03 Katowice => Administrator IT - Systemy Operacyjne i Wirtualizacja <=
- 2025-01-03 Warszawa => DevOps Engineer <=