Zwei Nachkommastellen

Snipero

Mitglied
Hallo,

ich benötige eine Hilfe!
Wie kann ich einem Label bzw. direkt der Variablen beibringen, dass es nur 2 Nachkommastellen anzeigen soll?

Denn eine Zahlenkette ist ziemlich unutzbar ;)

MFG:
Snipero2
 
Code:
float deineZahl = 2.545646446767567857768;
deineZahl = deineZahl + 0.005; // bei 3 stellen hinter dem Komma 0.0005 wegen richtigem Runden
int i  = (int)(deineZahl*100);  // bei 3 Stellen hinter dem komma *1000
     // durch das int casten werden überschüssige Stellen abgeschnitten
float gerundet = i/100;

MfG Turri
 
Turri hat gesagt.:
Code:
float deineZahl = 2.545646446767567857768;
deineZahl = deineZahl + 0.005; // bei 3 stellen hinter dem Komma 0.0005 wegen richtigem Runden
int i  = (int)(deineZahl*100);  // bei 3 Stellen hinter dem komma *1000
     // durch das int casten werden überschüssige Stellen abgeschnitten
float gerundet = i/100;

MfG Turri

Hallo deine Methode funktioniert aber nur wenn deineZahl maximal
INTEGER_MAX_VALUE ist wenn sie größer ist bekommst du ein Problem

Besser ist so:

Code:
float deineZahl = 2.545646446767567857768;
deineZahl = deineZahl + 0.005; 
double i = floor(deineZahl*100);
float gerundet = i/100;

Gruß

RedWing
 
Hallo,

ich denke, die Funktion FloatToStrF() wäre hier die bessere Wahl:

Label->Caption = FloatToStrF(FloatVariable,ffFixed,5,2);

FloatVariable ist die Variable des Typs float. ffFixed steht für das Runden auf bestimmte stellen nach dem Komma. Die 5 steht für die Präzision (precision) und die 2 für die Nachkommastellen.

MfG
TheBadDwarf
 

Neue Beiträge

Zurück