Danke für eure Antworten.
Nicht die exakte Darstellung. Nur die Anzahl der NS meiner gerundeten Double Zahl.
Also bei der Zahl 4512985.95 möchte ich 2 erhalten. => 2NS.
Bei der Zahl 0.00000023 möchte ich 8 erhalten. => 8NS
Dieser Code funktioniert schon mal ganz gut. Danke für den Link!
In meinem Fall werden die Werte max. 8-10 NS haben.
Delphi-Quellcode:
function GetDecimalPlaces(AValue: Double): Integer;
const
e = 0.0000000001;
var
r: Extended;
begin
Result := 0;
if AValue < 0 then
AValue := AValue * -1;
r := Int(AValue);
while ((Frac(AValue) <> 0) and ((AValue - r) > e)) do
begin
Inc(Result);
AValue := AValue * 10;
r := Int(AValue+e);
end;
end;