Es scheint viele Ansätze zu geben, um zu beurteilen, ob zwei Gleitkommazahlen identisch sind. Hier sind einige Beispiele, die ich gefunden habe:
fabs(x - y) < n * FLT_EPSILON * fabs(x)
ODERfabs(x - y) < n * FLT_EPSILON * fabs(y)
fabs(x - y) < n * FLT_EPSILON * fabs(x + y)
fabs(x - y) < n * FLT_EPSILON * fabs(x + y) || fabs(x - y) < FLT_MIN)
fabs(x - y) < n * FLT_EPSILON * sqrt(x * x + y * y + FLT_EPSILON * FLT_EPSILON)
Ich bin wirklich verwirrt über sie. Angenommen, es gibt eine beste Möglichkeit, zwei Gleitkommazahlen zu vergleichen. Dies ist sowohl die einfachste als auch die genaueste. Die anderen Ansätze sollten nicht einmal existieren. Diese verschiedenen Wege müssen also ihre eigenen Vor- und Nachteile haben.
Meine Frage ist: Um "echte Berechnungen" durchzuführen, welcher Ansatz ist der genaueste ?
Referenzlinks:
http://accu.org/index.php/journals/1558 (1 und 4)