Wenn man Fließkommazahlen mit einer bestimmten Genauigkeit vergleichen will macht man das z.B. so:
Delphi-Quellcode:
uses System.Math;
const
epsilon = 1E-2;
begin
if SameValue(a, b, epsilon) then [...]
end;
Wenn ich schauen will ob Zahl c zwischen a und b liegt kenne ich
InRange:
Delphi-Quellcode:
uses System.Math;
begin
if InRange(meineZahl, 10.5, 75.6) then [...]
end;
Ich kann aber nirgendwo ein Epsilon angeben. Wenn
meineZahl
nun
10.499999999999
ist, schlägt die Überprüfung fehl. Mir als Mensch ist es allerdings genau genug
Meine Frage: Gibt es da nichts fertiges in der Standard-Bibliothek?
Unter
Vergleichsroutinen habe ich sonst nichts gefunden...