Modulo-Rechner: Rest bei Division online berechnen

Ganzzahlarithmetik · euklidischer Rest

Modulo Rechner: Rest einer Division korrekt berechnen

Der Modulo Rechner zerlegt eine ganze Zahl in Quotient und nichtnegativen Rest. Er funktioniert auch bei negativen Dividenden nach der in der Mathematik üblichen euklidischen Definition. Neben dem Rest zeigt er die Kontrollgleichung, die Kongruenzklasse und typische Zyklusangaben. Alle Schritte laufen lokal im Browser.

Zwei ganze Zahlen eingeben

Die Zahl, die geteilt wird.
Für einen eindeutigen euklidischen Rest größer als null.

Ergebnis

−17 mod 5 = 3

−17 = (−4 × 5) + 3

Ganzzahliger Quotient−4
Restbereich0 ≤ 3 < 5
Kongruenz−17 ≡ 3 (mod 5)
Position im ZyklusSchritt 4 von 5

Was bedeutet Modulo?

Modulo bezeichnet den Rest, der nach einer ganzzahligen Division übrig bleibt. Bei 17 geteilt durch 5 passen drei vollständige Fünfer in 17; zwei bleiben übrig. Deshalb gilt 17 mod 5 = 2. Die Aussage ist präziser als „17 durch 5 ist 3,4“, denn sie beschreibt eine Zerlegung in ganze Einheiten. Der Divisionsalgorithmus lautet a = q × n + r. Dabei ist a der Dividend, n der positive Modulus, q ein ganzer Quotient und r der Rest mit 0 ≤ r < n.

Der Rechner verwendet genau diese Definition. Für a = −17 und n = 5 wählt er q = −4. Dann ist −4 × 5 = −20; mit dem Rest 3 wird daraus wieder −17. Der Rest bleibt im festgelegten Bereich von null bis n−1. Diese Konvention ist besonders nützlich für Zyklen, Kalender, Prüfziffern und Zahlentheorie, weil jede ganze Zahl genau einer der n Restklassen zugeordnet wird.

Das Wort „modulo“ wird manchmal für die gesamte Rechenoperation und manchmal für die Beziehung zwischen Zahlen verwendet. „17 modulo 5“ fragt nach dem Rest 2. „17 ist kongruent zu 2 modulo 5“ sagt, dass die Differenz 15 durch 5 teilbar ist. Beide Aussagen hängen zusammen, sind aber sprachlich nicht identisch.

Negative Zahlen: Rest oder Programmiersprachen-Operator?

Bei positiven Zahlen stimmen verbreitete Restkonventionen meistens überein. Bei negativen Zahlen können verschiedene Systeme unterschiedliche Werte liefern. Manche Programmiersprachen definieren den Prozentoperator als Rest nach einer gegen null abgeschnittenen Division. Dann kann −17 % 5 den Wert −2 ergeben. Die mathematische euklidische Variante dieses Rechners liefert dagegen 3. Beide Werte erfüllen mit einem passenden Quotienten eine Zerlegung, aber nur 3 liegt zwischen 0 und 4.

Für zyklische Indizes ist der nichtnegative Rest meist leichter. Wenn Wochentage von 0 bis 6 nummeriert sind, soll ein Schritt rückwärts von Montag wieder in diesem Bereich landen. Ein negativer Arrayindex wäre in vielen Umgebungen unerwünscht. In Code wird deshalb häufig eine Normalisierung wie ((a % n) + n) % n verwendet, sofern der eingebaute Operator negative Reste erzeugen kann.

Wichtig: Prüfen Sie bei einer Programmieraufgabe die Spezifikation der verwendeten Sprache. Dieser Rechner erklärt Mathematik und sagt nicht automatisch voraus, was jeder Operator in jeder Sprache zurückgibt.

Schritt-für-Schritt-Rechnung

  1. Prüfen Sie, dass Dividend und Modulus ganze Zahlen sind und n positiv ist.
  2. Berechnen Sie den Bodenquotienten q = ⌊a / n⌋. „Boden“ bedeutet Abrunden in Richtung minus unendlich, nicht Abschneiden in Richtung null.
  3. Setzen Sie r = a − q × n. Durch die Wahl des Bodenquotienten liegt r im gewünschten Bereich.
  4. Kontrollieren Sie die Identität a = q × n + r.
  5. Prüfen Sie zusätzlich 0 ≤ r < n. Erst beide Kontrollen zusammen bestätigen die euklidische Darstellung.

Beispiel 38 mod 7: Der Bodenquotient ist 5, denn 5 × 7 = 35. Der Rest ist 38 − 35 = 3. Kontrolle: 38 = 5 × 7 + 3 und 0 ≤ 3 < 7. Beispiel −38 mod 7: Der Bodenquotient ist −6, weil ⌊−38/7⌋ = −6. Der Rest ist −38 − (−6 × 7) = 4. Kontrolle: −38 = −42 + 4.

Kongruenz und Restklassen

Zwei ganze Zahlen a und b heißen kongruent modulo n, wenn n ihre Differenz teilt. Man schreibt a ≡ b (mod n). 38 und 3 sind modulo 7 kongruent, weil 38 − 3 = 35 durch 7 teilbar ist. Ebenso sind −4 und 3 modulo 7 kongruent, denn ihre Differenz −7 ist ein Vielfaches von 7.

Alle Zahlen mit demselben Rest bilden eine Restklasse. Modulo 5 gibt es fünf Klassen: Rest 0, 1, 2, 3 und 4. Die Klasse 0 enthält alle durch 5 teilbaren Zahlen. Die Klasse 1 enthält etwa …, −9, −4, 1, 6 und 11. Das macht unendlich viele ganze Zahlen zu einer endlichen Struktur, in der man addieren und multiplizieren kann.

Für Addition gilt: Erst addieren und dann modulo rechnen liefert dieselbe Restklasse wie die Reste zuerst zu addieren. Entsprechend gilt (a + b) mod n = ((a mod n) + (b mod n)) mod n. Eine analoge Regel gilt für Multiplikation. Dadurch lassen sich sehr große Potenzen und Prüfziffern schrittweise behandeln, ohne die vollständige riesige Zahl auszuschreiben.

Typische Anwendungen

AnwendungModulo-IdeeBeispiel
UhrzeitStunden wiederholen sich nach 2429 mod 24 = 5 Uhr
WochentagSieben mögliche Positionen10 Tage später: 10 mod 7 = 3 Schritte
Gerade oder ungeradeRest bei Division durch 2r = 0 gerade, r = 1 ungerade
Rotierende ZuständigkeitIndex läuft zyklisch durch eine ListeAuftrag 14 bei 4 Teams: 14 mod 4 = 2
PrüfverfahrenGewichtete Summe wird reduziertRegel hängt vom konkreten Standard ab
KryptografieRechnen in endlichen RestklassenBenötigt zusätzliche mathematische Regeln

Bei einer Uhr muss die Nummerierung klar sein. Wenn Positionen 0 bis 23 heißen, ist der Rest direkt ein Index. Bei einer Anzeige 1 bis 12 entspricht Rest 0 dagegen der 12. Auch bei Teams oder Sitzplätzen kann der technische Nullindex um eins von einer menschlichen Nummerierung abweichen. „Schritt 4 von 5“ auf dieser Seite übersetzt deshalb den Rest 3 in eine einsbasierte Position.

Fehler vermeiden und Ergebnis prüfen

Der häufigste Fehler ist die Division durch null. Für n = 0 gibt es weder einen sinnvollen Restbereich noch eine endliche Anzahl von Restklassen. Ein negativer Modulus kann in Lehrbüchern unterschiedlich behandelt werden; dieser Rechner verlangt bewusst n > 0. So bleibt die Definition eindeutig.

Dezimalzahlen gehören nicht ohne Weiteres in diese Aufgabe. 7,5 mod 2 kann als Gleitkomma-Rest berechnet werden, ist aber keine euklidische Division ganzer Zahlen. Wenn Geldbeträge zyklisch verarbeitet werden, sollten sie vorab in ganze Cent umgerechnet werden. Bei Messwerten ist zu klären, ob Rundung überhaupt zulässig ist.

Sehr große Ganzzahlen können im Browser ihre exakte Darstellung verlieren. Die Seite akzeptiert deshalb nur Werte innerhalb des sicheren Ganzzahlbereichs von JavaScript. Für noch größere Werte braucht man eine Ganzzahlbibliothek oder ein System mit beliebiger Präzision. Übertragen Sie niemals eine gerundete wissenschaftliche Schreibweise in eine Prüfziffernrechnung.

Eine schnelle Kontrolle besteht aus zwei Fragen: Ergibt q × n + r wieder exakt a? Liegt r zwischen null einschließlich und n ausschließlich? Wenn beides stimmt, ist die euklidische Division korrekt. Für Kongruenzen kann zusätzlich geprüft werden, ob a − r ohne Rest durch n teilbar ist.

Modulo bei Potenzen und periodischen Mustern

Folgen von Resten wiederholen sich häufig. Die Einerziffer von Potenzen ist eine Modulo-10-Frage. Bei 2 hoch k entstehen die Einerziffern 2, 4, 8, 6 und dann erneut 2. Der Zyklus hat Länge vier. Für 2 hoch 100 genügt deshalb 100 mod 4 = 0: Man wählt die vierte Position des Zyklus und erhält als Einerziffer 6.

Das Verfahren setzt voraus, dass der Zyklus korrekt bestimmt wurde. Ein Rest von null bedeutet dabei „letztes Element des vollständigen Zyklus“, wenn die Exponenten bei eins beginnen. Wer technische Indizes ab null und mathematische Folgen ab eins mischt, produziert leicht einen Versatz. Schreiben Sie deshalb Startwert, Periodenlänge und Indexkonvention ausdrücklich auf.

In der modularen Division ist besondere Vorsicht nötig. Man darf nicht allgemein durch dieselbe Zahl kürzen. Ein multiplikatives Inverses existiert modulo n nur, wenn Zahl und Modulus teilerfremd sind. Der einfache Modulo Rechner entscheidet solche Gleichungen nicht; er liefert die Restklasse als Grundlage für eine weiterführende Rechnung.

Modulo in Tabellenkalkulation, Datenbank und Programmlogik

Bei praktischen Anwendungen sollte nicht nur das sichtbare Ergebnis, sondern auch die Rundungsdefinition dokumentiert werden. Eine Tabellenkalkulation kann für negative Argumente eine andere Funktion oder Konvention als eine Programmiersprache verwenden. SQL-Dialekte, Statistiksoftware und Taschenrechner sind ebenfalls nicht automatisch identisch. Testen Sie deshalb mindestens einen positiven, einen negativen und einen exakt teilbaren Fall, bevor eine Formel in Produktion geht.

Für eine rotierende Liste mit n Einträgen und nullbasiertem Index wird häufig index = euklidischer Rest aus Schritt und n verwendet. Bei fünf Mitarbeitenden liefern die Schritte 0, 1, 2, 3, 4 die fünf Plätze; Schritt 5 springt wieder auf 0. Wenn die sichtbare Nummerierung bei 1 beginnt, wird erst der Rest berechnet und anschließend eins addiert. Das erklärt, warum der Rechner „Schritt r+1 von n“ anzeigt.

Beim Verteilen von Daten auf Partitionen ist ein reiner Modulo-Schlüssel nur dann sinnvoll, wenn Schlüssel ungefähr gleichmäßig auftreten. Er berücksichtigt weder unterschiedliche Last noch spätere Änderung der Partitionszahl. Wird n von fünf auf sechs erhöht, ändern viele Zuordnungen. Konsistentes Hashing oder eine Zuordnungstabelle kann für skalierende Systeme geeigneter sein.

In Kalendern reicht Modulo allein ebenfalls nicht immer. Monate haben verschiedene Längen, Schaltjahre folgen zusätzlichen Regeln und Zeitzonen erzeugen lokale Datumswechsel. Modulo 7 kann einen Wochentagsversatz darstellen, aber erst nachdem die Zahl der tatsächlich vergangenen Tage korrekt bestimmt wurde.

Weitere Kontrollbeispiele

Für 0 mod 9 ist Quotient 0 und Rest 0. Für 9 mod 9 ist Quotient 1 und Rest 0. Für 8 mod 9 bleibt der Quotient 0 und der Rest 8. Diese drei Fälle prüfen Anfang, vollständigen Zyklus und obere Restgrenze. Bei −1 mod 9 liefert die euklidische Definition den Rest 8 und den Quotienten −1, denn −1 = −9 + 8.

Testen Sie eine eigene Umsetzung auch mit Modulus 1. Jede ganze Zahl ist modulo 1 kongruent zu 0, weil es nur die Restklasse 0 gibt. Die sichtbare Zyklusposition ist dann Schritt 1 von 1. Ein anderer Rest weist auf eine falsche Normalisierung oder einen Gleitkommafehler hin.

Häufige Fragen zum Modulo Rechner

Was ist 17 modulo 5?

Das Ergebnis ist 2, weil 17 = 3 × 5 + 2 gilt und der Rest zwischen 0 und 4 liegt.

Warum ist −17 mod 5 gleich 3?

Mit dem Bodenquotienten −4 gilt −17 = −4 × 5 + 3. Der Rest 3 erfüllt den nichtnegativen Restbereich.

Ist Modulo dasselbe wie Prozent?

Nein. Das Prozentzeichen wird in vielen Programmiersprachen als Restoperator verwendet, mathematisch bezeichnet Prozent aber Hundertstel. Bei negativen Zahlen kann der Operator zudem anders definiert sein.

Kann der Modulus null sein?

Nein. Eine Division durch null ist nicht definiert und es gibt keinen gültigen Restbereich.

Wie prüfe ich Teilbarkeit mit Modulo?

Wenn a mod n = 0 ist, ist a ohne Rest durch den positiven Modulus n teilbar.

Warum sind nur ganze Zahlen erlaubt?

Die Seite berechnet die euklidische Division. Gleitkomma-Reste sind ein anderes Problem und können zusätzlich Rundungsfehler enthalten.

References

Nach oben scrollen