eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingPorównywanie liczb, double float › Re: Porównywanie liczb, double float
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!go
    blin1!goblin.stu.neva.ru!border1.nntp.ams1.giganews.com!nntp.giganews.com!etern
    al-september.org!feeder.eternal-september.org!reader01.eternal-september.org!.P
    OSTED!not-for-mail
    From: "Pszemol" <P...@P...com>
    Newsgroups: pl.comp.programming
    Subject: Re: Porównywanie liczb, double float
    Date: Thu, 13 Jun 2019 08:43:03 -0500
    Organization: A noiseless patient Spider
    Lines: 41
    Message-ID: <qdtjt2$7is$1@dont-email.me>
    References: <qdqqh6$n2f$1@dont-email.me>
    <a...@g...com>
    Reply-To: "Pszemol" <P...@B...com>
    Mime-Version: 1.0
    Content-Type: text/plain; format=flowed; charset="UTF-8"; reply-type=original
    Content-Transfer-Encoding: 8bit
    Injection-Date: Thu, 13 Jun 2019 13:42:58 -0000 (UTC)
    Injection-Info: reader02.eternal-september.org;
    posting-host="92d1e4c9f4a24b8937c64c00c2c50159"; logging-data="7772";
    mail-complaints-to="a...@e...org";
    posting-account="U2FsdGVkX18MhpmUK5NWi8dFZfFxe7Up"
    Cancel-Lock: sha1:kC9gt0CBxbKvEoBB+wKWAMNnJ+E=
    X-MimeOLE: Produced By Microsoft MimeOLE V14.0.8117.416
    In-Reply-To: <a...@g...com>
    X-Newsreader: Microsoft Windows Live Mail 14.0.8117.416
    Importance: Normal
    X-Priority: 3
    X-MSMail-Priority: Normal
    Xref: news-archive.icm.edu.pl pl.comp.programming:213552
    X-Original-Lines: 2
    [ ukryj nagłówki ]

    "bartekltg" <b...@g...com> wrote in message
    news:a843c978-5bcc-4a8a-97bd-67b77c7defe7@googlegrou
    ps.com...
    > Używaj funkcji abs, to samo, a czytelniej.

    Słuszna uwaga - dzięki.

    > W sumei to pierwsz rzecz, jakiej człowiek sie dowiaduja na jakimkolwiek
    > poważniejsyzm kursie dotykającym zmiennego przecinka. Ze szczegolnym
    > uwzlgędnieniem
    > "Nie wykonuj porównania == i <> na liczbach zmiennoprzecinkowych"

    I tyle mi zostało w głowie bo właśnie to <> mi się rzuciło w oczy
    i zacząłem tam badać. Ale już wyleciała z głowy interpretacja "dlaczego".

    > A jaka przyczyna? To przy okazji opisują.
    >
    > Zerknij na wiki, jak wyglada liczba zmiennoprzecinkowa.
    >
    > 2^coś *1.mantysa.
    >
    > 1/2 tak zapiszesz, ale 1/3 nie. 1/10 też nie.
    > Zerknij tutaj,
    > https://www.h-schmidt.net/FloatConverter/IEEE754.htm
    l
    > Liczy na single, ale zasada ta sama.
    > wpisując 1.8 tak naprawdę trzymasz najbliższa
    > reprezentaowalną liczbę, 1.7999999523162841796875
    > Podobnie 32.8.
    > 31 jest reprezentowane dokładnie.
    >
    > Teraz każda podstawowa operacja arytmetyczna biorąca argumenty
    > a i b (oznaczamy fl(a) i fl(b) jako wartośći reprezentowane) liczy
    > fl(a) (działanie) fl(b) dokładnie, a potem zapisuje jako najbliższa
    > reprezentowalna wartość.
    >
    > W ogolności
    > fl(a+b) = (fl(a)+fl(b))(1+eps), gdize ten epsylon to dokłądność
    > reprezentacji.

    Dzięki.
    Wartościowe odświeżenie sobie w głowie ważnego detalu
    z dziedziny programowania!

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: