Comparing floats (epsilon)
Në shqip: Krahasimi i numrave me presje
ShpjegimiSQ
Mos i krahaso kurrë numrat me presje me ==, sepse 0.1 + 0.2 s'është saktësisht 0.3. Kontrollo nëse diferenca është shumë e vogël: fabs(a - b) < 1e-9.
EnglishEN
Never compare floating-point numbers with ==, because 0.1 + 0.2 isn't exactly 0.3. Check whether the difference is very small: fabs(a - b) < 1e-9.
Si ta mendosh
Si të thuash që dy njerëz janë „njësoj të gjatë“ nëse dallimi është më pak se një milimetër.
Lexoje në anglisht
Like saying two people are “the same height” if they differ by less than a millimetre.
Shembull kodic
double a = 0.1 + 0.2, b = 0.3;
if (fabs(a - b) < 1e-9) printf("Pothuajse të barabarta\n");