Hallo Gemeinde,
wie das Topic schon sagt, spiele ich mit der Math.Round herum, habe da aber so meine Problemchen...
Eigentlich rechne ich nur Werte in einer for-Schleife aus und möchte diese dann als ganze, halbe, viertel und zehntel ausgeben. Mein Problem liegt nun darin, wie ich die Math.Round dazu bringe, mir viertel und halbe Werte auszugeben bzw. in 0.5er und 0.25er Schritten zu Runden.
Meine Lösung für ganze Ergebnisse: (1,00 - 2,00 - 3,00...)
double ERGganze = Math.Round(((ergebnis * 100 - 0.5) / 100), 0);
Meine Lösung für zehntel Ergebnisse: (1,10 - 1,20 - 1,30...)
double ERGzehntl = Math.Round(((ergebnis * 10) / 10), 1);
Gibt es hier eine Übersicht bzw. eine Richtlinie, an die man sich halten muss/kann?
Ich habe schon einige Zeit mit Google zugebracht, jedoch ohne Erfolg.
Schon mal vielen Dank für Eure Hilfe!
MfG
T
Hallo TLoD,
du hast dir die Lösung eigentlich doch schon selbst gegeben.
Du musst den Wert einfach vorher multiplizieren und anschließend wieder dividieren.
Wobei dein Beispiel-Code mit den Zehnteln so aussieht als hättest du eine klammer falsch gesetzt.
Probier es mal so
double viertel = Math.Round(ergebnis * 4, 1) / 4;
double halbe = Math.Round(ergebnis * 2, 1) / 2;
Grüße
Michael