Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#20

AW: Runden ohne nachfolgende Nullen

  Alt 11. Mär 2017, 13:15
FloatToString beseitig zwar alle Vornullen und Nachkommanullen, es fehlt aber das Runden auf drei Nachkommastellen.
Dann vielleicht so?
Delphi-Quellcode:
program Project213;

{$APPTYPE CONSOLE}

uses
  System.SysUtils,
  System.Math;

const
  cFloats: array [0..6] of double = (1.2347, 2.4043, 2.001, 1.0002, 1.100123, 1.4036, 2.330456);

var
  d: double;

begin
  for d in cFloats do begin
    Writeln(format('%1.3f = %s', [d, FloatToStr(RoundTo(d, -3))]));
  end;
  Readln;
end.
Code:
1,235 = 1,235
2,404 = 2,404
2,001 = 2,001
1,000 = 1
1,100 = 1,1
1,404 = 1,404
2,330 = 2,33
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat