porównywanie int do float

0

Witam
Ostatnio na metodach numerycznych padło stwierdzenie iz nie mozna robic porównania a==0 gdzie a jest typu float.Gdyby ktos zaznajomiony z tematem mogl wyjasnic dlaczego tak jest byłbym wdzięczny.

//|dzieki
|/

0

To jest spowodowane bledami obliczen na liczbach zmiennoprzecinkowych. Jest ograniczona precyzja i praktycznie nigdy nie osiaga sie 0. Dlatego nalezy przyjac, ze 0 jest wowczas, gdy liczba spelnia warunek (a>-epsilon) and (a < epsilon), gdzie epsilon jest dowolnie mala liczba.
Dlaczego powstaja bledy przy obliczeniac, to chyba na forum bylo. Przy liczbach zmiennoprzecinkowych najwiecej bledow jest przy dodawaniu i odejmowaniu (mnozenie i dzielenie generalnie nie powoduje utraty dokladnosci).

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0