-
Data: 2013-11-14 20:25:30
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-13 19:29, firr pisze:
Nie chciałem sam karmić, ale wątek się rozbijał;)
> juz pare razy sie zastanawialem cze gdyby
> zdefiniowac sobie liczbe jako pare integerow
> licznik i mianownik (najlepiej jako i64
> a nie i32 bo dla 32 bit chyba szybko mogloby
> dochodzic do przepelnienia) to czy takie
> rachunki nie mialyby szansy byc lepszymi
> od floata/double
Jak już powiedziano, zastąpienie doubla
ułamkiem z intów sensu nie ma.
Jest to czasem przydatne, ale w specyficznych
zastosowaniach.
Jako ciekawostka, do standardu c++ wleciało coś takiego
http://en.cppreference.com/w/cpp/numeric/ratio
Za to przydać się może w innych zastosowaniach.
> zalety sa np takie
>
> 1) jest to szybkie tj arytmetyka calkowita bez dzielenia w wiekszosci operacji
Już padło. 1145/2568 + 6848/6127
Ile operacji musisz wykonać? Co najmniej 3 mnożenia i jedno dodawanie,
a wypadałoby jeszcze ułamek skrócić.
> 2) byloby to (poki sie nie wywali z powodu
> przepelnienia0 scisłe, tj nie traci informacji
Chyba, że postanowię policzyć ułamek:)
I znów, przydatne, al tylko w specyficznych zastosowaniach.
> 3) pozwala opoznic dzielenie, floaty wykonuja
> dzielenia z kazdym znakiem / - taka liczba o wiele
> rzadziej np przy wydruku na ekran reprezentacji dziesietnej
Dzielenie dwóch intów nie jest czasem mniej kosztowne niż
operowanie na typie udającym dwa razy dłuższego inta.
Dwa razy, na licznik i mianownik;)
>
> wady - nie wiem czy to wogole by dzialalo tj
> boje sie ze szybko by sie przepelniało (ale moze
> dla i64 nie tak szybko?)
>
> ktos moglby rozwinac jakos ten temat i powiedzic
> cos na temat tej opcji?
Może jakiś przykład prawie*) z życia. Generowałem sobie kiedyś
węzły i współczynniki do kwadratur gaussa. Nic prostszego,
generujesz wielomiany legandrea, potem szukasz zer - to są węzły.
Formuła trójczłonowa dla tych wielomianóww jest wymierna.
Mają tylko wymierne współczynniki.
Po wygenerowaniu wieomianów miejsca zerowe i całki
można już liczyć z dowolną precyzją, bez konieczności
przeliczania wszystkiego ze zwiększoną dokładnością.
*) prawie, bo obecne komputery są na tyle mocne, że
na wielomian potrzebny do wszelkich rozsądnych operacji
wystarczy wziąć pakiet typu gmp i wpisać sporą dokładność,
weryfikując tylko wyniki, czy nie ma szumu:)
pzdr
bartekltg
Następne wpisy z tego wątku
- 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
- 15.11.13 13:12 Tomasz Kaczanowski
- 15.11.13 13:39 Paweł Kierski
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-14 Canon 550D
- 2024-09-14 Odcinkowy Pomiar Prędkości. NIELEGALNY w Polsce!!! Nie daj SIĘ!
- 2024-09-14 Warszawa => Menadżer Okręgu <=
- 2024-09-14 Łódź => Spedytor Międzynarodowy <=
- 2024-09-14 Warszawa => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-09-14 Warszawa => Technical Leader (Java Background) <=
- 2024-09-14 Gdynia => Spedytor Międzynarodowy <=
- 2024-09-14 k.o.mendant
- 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) <=