Programmieren - alles kontrollieren 4.940 Themen, 20.676 Beiträge

Precision einstellen bei C++ Windows Anwendung ?

Selecta / 3 Antworten / Flachansicht Nickles

Hi wir haben gerade ein Wahl Programm geschrieben:

cdu++;
ges = ges++;
labelges->Caption=ges;
panelcdu->Width=cdu*200/ges;
panelfdp->Width=fdp*200/ges;
panelgru->Width=gru*200/ges;
panelspd->Width=spd*200/ges;

labelgru->Caption=FloatToStr((gru*200/ges)/2)+ "%"; // Hier
labelfdp->Caption=FloatToStr((fdp*200/ges)/2)+ "%"; // soll
labelcdu->Caption=FloatToStr((cdu*200/ges)/2)+ "%"; // Gerundet
labelspd->Caption=FloatToStr((spd*200/ges)/2)+ "%"; // werden (2 St.)

Der unterste Abschnitt mit den 4 FloatToStr gibt die Prozente in das label aus. Alles ist richtig und klappt, nur leider kommen Zahlen wie: 33,3333333333333333333(...). Leider weiß ich nur wie das mit Precision in der Konsole geht. Möchte gerne (im obigen Falle) gerne 33,33 dort stehen haben. Hoffe ihr versteht mein Problem.

Benutze: Borland C++ Builder 5.0

GreeTz Selecta

bei Antwort benachrichtigen
Antwort Borlander
mr.escape Selecta „Precision einstellen bei C++ Windows Anwendung ?“
Optionen
ges = ges++;

So etwas sollte man auf keinen fall machen. Das kann, je nach compiler, einstellungen, etc., mal so und mal so übersetzt werden (ergebnis ausrechnen, postinkrementieren und dann erst wert zuweisen oder ergebnis ausrechnen, wert zuweisen und dann erst postinkrementieren).
Eine zeile oben darüber hat's doch auch wunderbar geklappt.

mr.escape
"The man who trades freedom for security does not deserve nor will he ever receive either." - Benjamin Franklin"Wer seine Freiheit aufgibt, um Sicherheit zu erreichen, wird beides verlieren." - Georg Christoph Lichtenberg
bei Antwort benachrichtigen