Runden in BCB 5
-
Beispiel
400,93472342734
will ich nur die 400 anzeigen lassen, jedoch sollten kommastellen weiter hochgezählt werden(nicht sichbar).
-
äh 400 oder 401?
Mathematisch korrekt wäre 401 -> dann FloatToStrF() verwenden. Wenn tatsächlich 400 angezeigt werden soll -> AnsiString((int) zahl);
-
Ich lasse eine bestimmte zahl !!!jede sekunde!!! +0.9392472734 hochzählen.
will aber nur die zahl links vom komma anzeigen lassenbitte schreibt mir ein beispiel
-
Nun werd mal nicht pampig...

Wo willst du das denn überhaubt anzeigen???
-
ich werd ned pamping

folgendes programm:
void __fastcall TMain::TimerRohstoffeTimer(TObject *Sender) { // Förderung Eisenerz pro Sekunde. float erz; float forderungerz; forderungerz=StrToFloat(Main->ForderungEisenerz->Caption); erz=StrToFloat(Main->Eisenerz->Caption); forderungerz=forderungerz/3600; // Ausgabe erz=erz+forderungerz; Main->Eisenerz->Caption=FloatToStr(erz); //Hier will ich nach dem Komma abscheiden }
-
Wie schon gesagt (und gezeigt): caste deinen float nach int bzw. weise ihn einem int zu, dabei fallen die Kommastellen automatisch weg.
-
das geht bei größeren zahlen z.b.
float: 5000:3600=1,38
int: 5000:3600=1bei dem beispiel zählt er mir pro sekunde(timer) +1 hinzu.
wenn ich aber folgendes rechne:
float: 500:3600=0,13
int: 500:3600=0zählt er mir +0 hinzu, das will ich nicht. er soll mir +0,13 hinzuzählen aber nicht anzeigen.
-
Rechnen musst du natürlich weiterhin mit den floats, den Integer sollst du nur für die Ausgabe verwenden.
-
// || Förderung Eisenerz pro Sekunde. || int erz; float forderungerz; forderungerz=StrToFloat(Main->ForderungEisenerz->Caption); erz=StrToInt(Main->Eisenerz->Caption); forderungerz=forderungerz/3600; erz=erz+forderungerz; // Ausgabe Main->Eisenerz->Caption=IntToStr(erz);Wenn sie das so meinen
...geht nicht 
-
Grundgütiger...
Liest Du die Postings überhaupt???
Irgendwo viele Postings früher habe ich das schon mal geschrieben:
AnsiString((int) zahl); // auf Dein Beispiel angewendet dann: Main->Eisenerz->Caption=AnsiString((int) erz);Joe_M.
-
danke nochmals, es geht

sorry...aber ich nutze das programm noch nicht sehr lange und konnte damit nichts anfangen