Integer Runden
-
Hallo liebe com,
Ich meine frage bezieht sich auf eine runden Funktion.
zum Beispiel:int i = 103;
und die 103 soll er selbstständing auf 110 runden,
und die differenz zahl in eine andere variable abspeichern.mfg
-
Hallo,
also rein mathematisch betrachtet kann man Ganzzahlen nicht runden. Also wandle um in einen double und teile die Zahl durch 10. Dann etwa sowas:
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { SetRoundMode(rmUp ); } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { double zahl; zahl = Edit1->Text.ToDouble()/10 ; Edit2->Text = RoundTo(zahl,0)*10; Edit3->Text = Edit2->Text.ToDouble()-Edit1->Text.ToDouble(); }
und math.h einbinden
Gruß myerscola
-
Du kannst den Rest mit Modulo bestimmen.
Und den Hauptanteil mit Geteilt.int Rest = 0; if ((i % 10) != 0) { Rest = 10 - (i % 10); i = ((i / 10) + 1) * 10; }
Für negativ Zahlen darfst du selber überlegen.
-
danke ihr beiden