Jeśli jesteś właścicielem tej strony, możesz wyłączyć reklamę poniżej zmieniając pakiet na PRO lub VIP w panelu naszego hostingu już od 4zł!
Strony WWWSerwery VPSDomenyHostingDarmowy Hosting CBA.pl

Liczby z przecinkiem.

Posted by Darek on Sierpień 6, 2012

Zaczynając programowanie porównywałem “floaty” jak normalne liczby:

W dalszym toku nauki nauczyłem się, że takie liczby mogą się różnić o niewielką wartość. Dla nas może być to nie ważne, ale porównywanie liczb w dawny sposób powoduje niewłaściwe działanie programu.
Nowym sposobem jest przyjęcie o “ile” dwie zmienne mogą się różnić.

Cóż takie małe uprzykrzenie życia.
Ostatnio próbowałem jeżyka programowania o nazwie Haskell. Znalazłem się przy tworzeniu listy z liczb. Taki oto mniej więcej widniał kod:

Miał wypisywać liczby 1.0 do 2.0 z krokiem 0.2(przy pomocy liczby 1.2 obliczany jest następny krok, jest to druga liczba w kolejności).
Ku mojemu zdziwieniu wynik ukazał się taki:

Dlaczego – autor wyjaśnia to słowem “precyzja”.
Spróbowałem wykonać podobną listę w C++

Wynik, bardziej “dokładny”:

Jaki z tego wniosek? Każdy język może obsługiwać liczby zmiennoprzecinkowe w różny sposób. Trzeba uważać na takie aspekty nowego języka, dlatego gdyż mogą spowodować masę błędów.
Co do Haskalla. Metodą prób i błędów zbudowałem taki oto działający kod:

Kod tworzy nową listę od 10 do 20 z krokiem 2. Następnie dzieli ją przez 10.
Wynik oczywiście “bardziej dokładny”:

Last modified on Kwiecień 13, 2013

Categories: Języki programowania
No Comments »

« | Home | »

Leave a Reply