Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Gleitkommazahl abschneiden (https://www.delphipraxis.net/35243-gleitkommazahl-abschneiden.html)

Meflin 4. Dez 2004 11:32


Gleitkommazahl abschneiden
 
Hi,
ich habe eine gleitkommazahl (die einen prozentwert darstellt). von dem möchte ich aber nur die ersten 4 nachkommastellen anzeigen! auf 4 stellen runden ist recht arbeitsintensiv (zumindest wenn das tool selber ne menge resourcen braucht, und das tut es). also will ich einfach nur alles hinter der 4. Nachkommastelle abschneiden.
Nun meine frage: wie macht man das?

*MFG*

Ultimator 4. Dez 2004 11:34

Re: Gleitkommazahl abschneiden
 
Ich würde die Zahl in einen String umwandeln, mit pos() nach dem Komma suchen und alles, was nach einer bestimmteen ANzahl Ziffern kommt, löschen.
Danach natürlich das ganze wieder in einen Fließkommawert umwandeln.

Nicodius 4. Dez 2004 11:35

Re: Gleitkommazahl abschneiden
 
Delphi-Quellcode:
var M : Real;
begin
  M := 12.343234234;
  Form1.Caption := FloatToStrF(M,ffNumber,4,4);
sollten vorne aber nicht zuviele stellen sein :?

Nothine 4. Dez 2004 11:37

Re: Gleitkommazahl abschneiden
 
Delphi-Quellcode:
function Abschneiden(X: Extended): Extended;
begin
  Result := Int(X*10000)/10000;
end;

Meflin 4. Dez 2004 11:39

Re: Gleitkommazahl abschneiden
 
Zitat:

Zitat von Nicodius
Delphi-Quellcode:
var M : Real;
begin
  M := 12.343234234;
  Form1.Caption := FloatToStrF(M,ffNumber,4,4);
sollten vorne aber nicht zuviele stellen sein :?

nett... :) und was sind die letzten zwei parameter?

Nicodius 4. Dez 2004 11:40

Re: Gleitkommazahl abschneiden
 
aus der OH --> :mrgreen: Delphi-Referenz durchsuchenFloatToStrF

Zitat:

Beschreibung

FloatToStrF konvertiert die mit Value angegebene Gleitkommazahl in die entsprechende String-Darstellung.

Value ist der zu konvertierende Wert.
Precision legt die Genauigkeit des angegebenen Wertes fest. Sie sollte bei Werten des Typs Single bis zu 7, bei Werten des Typs Double bis zu 15 und bei Werten des Typs Extended bis zu 18 Stellen betragen.
Die Parameter Digits und Format steuern zusammen, wie die Formatierung in einen String erfolgt. Genaue Informationen hierzu finden Sie bei der Beschreibung von TFloatFormat.

Meflin 4. Dez 2004 11:42

Re: Gleitkommazahl abschneiden
 
perfect, thx
und es sind vorne auch nicht zu viele stellen ;) ein prozentwert hat "vorne" höchstens 3... zumindest meistens ;)

Nicodius 4. Dez 2004 12:13

Re: Gleitkommazahl abschneiden
 
:stupid: dann passts ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:31 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz