Bonjour,
J'ai une question qui peut paraitre naïve, mais je me demande s'il existe des cas où il faut remplacer des tests d'égalité sur des nombres par des tests du type
Je code une application qui manipule beaucoup d'équations linéaires, et j'ai (pour l'instant) toujours pu valider mes tests avec des égalités (==) et pas des tests de distance comme ci dessus.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 #define precision 0.000001 bool isEquals(long double a, long double b) { long double diff = a - b; if (diff < 0.0) diff = - diff; return diff < precision; }
Je vous demande donc si:
- vous avez eu le problème d'erreurs dans les calculs? Et si oui, comment vous l'avez résolu?
- Si on peut avoir besoin du code (moche) ci dessus?
- Et si == suffit toujours, alors pourquoi?
Merci
Partager