Round aus den FAQ
-
moin
Wohl nur ein kleiner Schönheitsfehler:
double Round(double Zahl, unsigned int Stellen) { Zahl *= pow(10, Stellen); if (Zahl >= 0) floor(Zahl + 0.5) else ceil(Zahl - 0.5); Zahl /= pow(10, Stellen); return Zahl; }
Eigentlich haben ceil() und floor() einen return value.
Wenn es denn umbedingt ohne return value was werden soll, dann zB so:// y = 0 standard floor; y = 0.5 richtiges runden void wrap_floor(double *x,double y) { *x = floor(*x + y); } wrap_floor(&Zahl,0.5);
vielleicht ein bißchen zuviel des Guten
Zahl = floor(Zahl + 0.5) wär wohl einfacher gewesen. naja...Gruß stahl