Einzelnen Beitrag anzeigen

Benutzerbild von EWeiss
EWeiss

Registriert seit: 16. Okt 2010
6.375 Beiträge
 
Delphi 2010 Architect
 
#10

AW: Anzahl der Nachkommastellen von Double ermitteln

  Alt 13. Sep 2018, 10:55
Warum so kompliziert?
Ein einfaches Splitten.

Delphi-Quellcode:
function GetLength(Value: Double): Integer;
var
  so: Integer;
  tResult: string;
begin

  tResult := FloatToStr(ABS(Value));
  so := InStr(1, tResult, ',');
  if (so <> 0) then
  begin
    Result := Length(MidStr(tResult, so + 1, Length(tResult)));
  end;
end;
LenValue := GetLength(4512985.95); Bei mir sind es 2 nicht mehr nicht weniger.

gruss
Kommt aber leider bei:

GetLength(0.00000023)

schon an seine Grenzen...
Ja nun das ist das Problem was @Sherlock schon angesprochen hat.
Zitat:
Das Thema ist aufgrund der internen Darstellung von Gleitkommazahlen nicht ganz ungefährlich.
Es liegt doch an dir einfach nur den Double wert korrekt zum String zu konvertieren.
Danach ist es so wie @gammatester sagte..
Zitat:
Wenn Du die Zahl als String hast, kannst Du einfach zählen.
gruss
  Mit Zitat antworten Zitat