2009-06-17 5 views
-1

Mögliche Duplizieren:
Built in .Net algorithm to round value up to the nearest 10 intervalWie kann ich eine Methode erstellen, die auf die nächste 5er-Ziffer aufrundet?

HALLO, i benötigen eine Methode, die nächste Nummer der 5er Zeile zurückgibt. Beispiel: 3 -> 5 7 -> 10 8 -> 10 16 -> 20

wie kann ich das? thx

+1

Hausaufgaben? – Fredou

+0

Ich habe gewählt, um "genaues Duplikat" zu schließen. http://stackoverflow.com/questions/274439/built-in-net-algorithm-to-round-value-up-to-the-nearest-10-interval –

+0

Nicht ein exaktes Duplikat - er will immer aufräumen nicht auf den nächsten. – tvanfosson

Antwort

2

Für positive Werte:

int rounded = 5 * Math.Ceiling((double)original/5); 
+0

+1 Sie haben Recht - nette Antwort! –

0
int rounded = original + (5 - original%5);   
+0

Das ist 4/5 gut, aber für 0 bekommen Sie 5, 5 -> 10, 10 -> 15 usw. 10% 5 ist Null, das letzte Mal habe ich überprüft. – Kobi

+0

Kobi, du hast Recht. Ich hätte folgendes schreiben sollen: gerundet = n% 5 == 0? N: n + (5 - n% 5) –

+0

Zu Ihrer Information, keine Ihrer Versionen funktioniert korrekt für negative Zahlen. –

Verwandte Themen