Einzelnen Beitrag anzeigen

Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#1

Aufrunden einer Zahl auf nächstes Vielfaches

  Alt 19. Aug 2011, 21:11
Hallo DPler!

Ich stehe im Moment leider mathematisch etwas auf dem Schlauch. Ziel ist es, eine ganze Zahl auf das nächste Vielfache von m aufzurunden.
Hier unterscheidet sich die Aufgabe in zwei Situationen:

(1) m ist bereits beim Programmieren bekannt und entspricht einer Zweierpotenz, in meinem Fall 2^12, also 4096.
(2) m ist eine beliebige, unbekanntem ganze Zahl

Hier ein kleiner Demonstrations-Code, der in beiden Fällen tut was er soll, allerdings sehr unschön.

Code:
while zahl % m != 0:
    zahl = zahl + 1
Ich würde mich freuen, wenn ihr mir helfen könntet, die Zahl korrekt aufzurunden. Für die zwei unterschiedlichen Fälle sind auch zwei unterschiedliche Vorgänge in Ordnung, es interessiert mich hier lediglich, wie man in beiden Fällen am besten Vorgehen kann. Bei (1) lässt sich möglicherweise besser mit Bitschupserei arbeiten.

Das Ganze muss unabhängig von jeder Sprache und Bibliothek funktionieren, also kein ceil() o.ä.

Vielen Dank für eure Hilfe!

Liebe Grüße,
Valentin
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat