Wählen Sie eine Betriebsart und geben Sie ganze Zahlen ein. „Rest“ funktioniert auch mit negativen Zahlen und zeigt, wie sich der mathematische Rest (0 oder mehr) vom %-Operator in der Programmierung unterscheidet.
Inhaltsverzeichnis
-
Was Sie auf dieser Seite tun können
-
Wofür ist diese Berechnung nützlich?
-
Anleitung
-
Formeln und Abbildungen
-
Symbole und Begriffe
-
Was Sie vorab wissen sollten
-
Mit Excel berechnen
-
Mit Google Tabellen berechnen
-
Mit Python berechnen
-
Die Formel in LaTeX und anderen mathematischen Schreibweisen (zum Kopieren)
-
Die Berechnung von ChatGPT ausführen lassen
-
Die Vorteile von DataChef
-
Verwandte Funktionen
-
Alle NumberChef-Rechner
Was Sie auf dieser Seite tun können
- Berechnen Sie den Rest, wenn eine ganze Zahl \(a\) durch \(n\) geteilt wird. Auch negative Zahlen sind möglich (zum Beispiel \(-7\) geteilt durch \(3\)): Die Seite zeigt den mathematischen Rest (\(0 \le r < n\)) neben dem Ergebnis des %-Operators in C, Java, JavaScript und ähnlichen Sprachen (das negativ sein kann)
- Prüfen Sie, ob die Kongruenz \(a \equiv b \pmod{n}\) gilt, mit der Begründung, ob die Differenz \(a - b\) ein Vielfaches von \(n\) ist
- Bestimmen Sie den exakten Rest einer riesigen Potenz, etwa \(7^{100}\) geteilt durch \(13\), mit den Schritten des wiederholten Quadrierens (Zahlen, die für einen normalen Taschenrechner zu groß sind, sind kein Problem)
- Sehen Sie den Rest auf einem Zifferblatt-Diagramm (dem Kreis von mod \(n\)) und bekommen Sie ein Gefühl dafür, wie die Reste immer wieder um dieselben Stellen laufen (das Zifferblatt erscheint, wenn der Modul \(n\) zwischen 2 und 24 liegt)
- Eine leicht verständliche Erklärung der Formeln sowie Formeln zum Kopieren für Excel, Google Tabellen und Python finden Sie ebenfalls auf dieser Seite
Wofür ist diese Berechnung nützlich?
Auf einer Uhr ist „14 Uhr gleich 2 Uhr auf dem Zifferblatt“ genau die Rest-Rechnung 14 mod 12 = 2. Bei den Wochentagen ist es genauso, mit einer Uhr, die alle 7 Tage einmal herumgeht. Ist heute zum Beispiel Montag, dann ist wegen 100 mod 7 = 2 der Tag in 100 Tagen „2 Tage nach Montag“, also Mittwoch.
Papierkalender und Kalender-Apps ordnen Daten den Wochentagen mit dieser Rest-Rechnung zu.
Die letzte Ziffer eines Produkt-Barcodes (EAN-13) oder der ISBN-13 eines Buchs ist eine Prüfziffer, die aus den übrigen Ziffern mit einer Rest-Rechnung gebildet wird. Beim EAN-13 zum Beispiel werden die Ziffern abwechselnd mit 1 und 3 multipliziert und addiert, und die letzte Ziffer ergänzt die Summe auf das nächste Vielfache von 10, sie hängt also vom Rest der Summe geteilt durch 10 ab.
Vertippt man sich in einer Ziffer, passt der Rest nicht mehr, und Kassen und Online-Shops können den Fehler sofort erkennen. Auch die Prüfziffern der IBAN (Rest bei der Division durch 97) und der Kreditkartennummern beruhen auf demselben Gedanken.
RSA, die bekannteste Public-Key-Verschlüsselung, um zum Beispiel Kreditkartennummern sicher zu übertragen, benutzt „den Rest einer riesigen Potenz“ direkt in ihren Berechnungen. Eine Potenz mod n lässt sich schnell berechnen, aber vom Ergebnis auf die ursprüngliche Zahl zurückzurechnen ist extrem schwer. Diese Einwegeigenschaft macht sie sicher.
Das wiederholte Quadrieren, dessen Schritte die Betriebsart „Potenz mod n“ auf dieser Seite zeigt, ist die Rechnung, die Verschlüsselungssoftware jeden Tag ausführt.
Beim Programmieren wird der %-Operator ständig gebraucht: i % 2 unterscheidet gerade von ungerade, und i % n bildet eine Reihenfolge, die alle n Elemente von vorn beginnt (den nächsten Spieler in einem rundenbasierten Spiel wählen, nach der letzten Folie wieder zur ersten springen und so weiter).
Kommen negative Zahlen ins Spiel, liefert % in verschiedenen Sprachen verschiedene Ergebnisse. Der Unterschied „mathematischer Rest gegenüber % in C und Java“ hilft deshalb bei der Fehlersuche.
Verteilt man 63 Bleistifte gleichmäßig an 12 Personen, bekommt jede 5, und 3 bleiben übrig (63 = 12 × 5 + 3). Ware in Kartons verpacken (wie viele volle Kartons mit n Stück und wie viele bleiben übrig), Personen für eine Feier in Gruppen einteilen: Jede Situation, in der man „gleichmäßig verteilt und schaut, was übrig bleibt“, ist diese Rechnung.
Die Grundgleichung der Division a = n × q + r fasst alle diese Alltagssituationen in einer Formel zusammen.
Formeln und Abbildungen
Symbole und Begriffe
Symbole
| \(\equiv\) | ist kongruent zu | Das Zeichen für die Kongruenz. Es ist ein Gleichheitszeichen mit drei statt zwei Strichen und sagt „gleich in der Welt der Reste“, was lockerer ist als „genau gleich“. |
| \(\bmod\) (mod) | mod | Kurzform für „Modul“, vom lateinischen Wort „modulus“ (kleines Maß). „\(a \bmod n\)“ steht für „der Rest von \(a\) geteilt durch \(n\)“, und ein „\(\pmod{n}\)“ hinter einer Gleichung erklärt: „Wir rechnen modulo \(n\)“. |
| \(a,\ b\) | a, b | Die ganzen Zahlen, deren Reste man betrachtet. In einer Kongruenz sind es die beiden ganzen Zahlen links und rechts. Für feste Zahlen nimmt man traditionell Buchstaben vom Anfang des Alphabets. |
| \(n\) | n | Der Modul (die Zahl, durch die man teilt). Oft nimmt man den Buchstaben \(n\), vom lateinischen „numerus“ (Zahl). Auf dieser Seite ist er eine ganze Zahl ab 1. |
| \(q\) | q | Der Quotient, vom Anfangsbuchstaben von „Quotient“. Bei der Division einer negativen Zahl wird der Quotient auf die kleinere ganze Zahl abgerundet, damit der Rest mindestens 0 ist (Floor-Division). |
| \(r\) | r | Der Rest, vom Anfangsbuchstaben von „Rest“. In der Mathematik wählt man ihn immer im Bereich \(0 \le r < n\). |
| \(m\) | m | Die ganze Zahl in der Definition der Kongruenz, die angibt, wie oft der Modul in der Differenz enthalten ist. Sie kann negativ oder 0 sein. |
| \(a^{k}\) | a hoch k | \(a\), \(k\)-mal mit sich selbst multipliziert (eine Potenz). Die kleine Zahl \(k\) rechts oben ist der Exponent, der angibt, wie oft multipliziert wird. |
| % | Prozentzeichen (als Operator: mod) | Der Modulo-Operator, der in vielen Programmiersprachen einen Rest berechnet. Er sieht aus wie das Prozentzeichen, hat aber eine andere Aufgabe. In C, Java und JavaScript kann sein Ergebnis für negative Zahlen vom mathematischen Rest abweichen (siehe den Kerngedanken der Formelkarte 1). |
Begriffe
| Rest (Divisionsrest) | Das, was übrig bleibt, wenn eine Division nicht aufgeht. In der Mathematik ist er immer mindestens \(0\) und kleiner als der Divisor. |
| Quotient | Die ganze Zahl, die angibt, wie oft man den Divisor abziehen kann. Es ist das \(q\) in der Grundgleichung der Division \(a = n \times q + r\). |
| Modul | Die Zahl \(n\), durch die man teilt, um die Reste zu erhalten, mit denen man rechnet. Auf einem Zifferblatt ist es die Zahl der Striche einer ganzen Runde. „Modulo 12“ ist die Kurzform für „die Reste bei der Division durch 12 betrachten“. |
| kongruent | Zwei ganze Zahlen sind modulo \(n\) kongruent, wenn sie bei der Division durch \(n\) denselben Rest haben. Das ist ein Begriff für ganze Zahlen und etwas anderes als kongruente Figuren in der Geometrie (gleiche Form und Größe). |
| Kongruenz | Eine Aussage der Form \(a \equiv b \pmod{n}\). Man kann Kongruenzen wie Gleichungen addieren, subtrahieren und multiplizieren, deshalb lassen sich Rest-Aufgaben durch Umformen lösen. Sie ist ein Grundwerkzeug der Zahlentheorie, das bei Mathematikwettbewerben und in der Informatik gebraucht wird. |
| Vielfaches | Eine Zahl, die man erhält, wenn man eine ganze Zahl mit einer anderen ganzen Zahl multipliziert. „Die Differenz ist ein Vielfaches des Moduls“ ist die Definition der Kongruenz. |
| Floor-Division (abrundende Division) | Eine Art zu dividieren, bei der der Quotient auf die kleinere ganze Zahl abgerundet wird. Ist der Divisor positiv, ist der Rest auch bei negativem Dividenden mindestens 0. Der //-Operator in Python und die Excel-Funktion GANZZAHL arbeiten so. |
| Modulo-Operator | Der %-Operator, der in der Programmierung einen Rest berechnet. C, Java und JavaScript runden den Quotienten zur 0 hin (der Rest übernimmt das Vorzeichen des Dividenden). Python und Ruby verwenden die Floor-Division (der Rest übernimmt das Vorzeichen des Divisors, ist also mindestens 0, wenn der Modul positiv ist). |
| wiederholtes Quadrieren (schnelle Exponentiation) | Ein Verfahren, den Rest einer riesigen Potenz mit wenigen Multiplikationen zu finden: immer wieder quadrieren und dabei den Rest bilden, den Exponenten in eine Summe von Zweierpotenzen zerlegen und die Teile multiplizieren. Man nennt es auch Square-and-Multiply, und es steckt unter anderem in Implementierungen der RSA-Verschlüsselung. |
| Restklasse | Der Gedanke, ganze Zahlen nach ihrem Rest bei der Division durch \(n\) in Gruppen einzuteilen. In der Welt von mod \(n\) fällt jede ganze Zahl in eine von \(n\) Gruppen, den Resten \(0\) bis \(n-1\). Gerade und ungerade Zahlen sind die Einteilung nach dem Rest bei der Division durch 2. |
| Periodizität | Die Eigenschaft, dass sich die Reste von Potenzen im selben Muster wiederholen. Es gibt nur \(n\) mögliche Reste, sie müssen also irgendwann zu einem schon dagewesenen zurückkehren. Den Zyklus bei Aufgaben zur letzten Ziffer (mod 10) zu finden, ist ein Klassiker bei Mathematikwettbewerben. |
| teilerfremd | Zwei ganze Zahlen sind teilerfremd, wenn ihr größter gemeinsamer Teiler 1 ist. Das kommt in der Bedingung vor, unter der man beide Seiten einer Kongruenz durch dieselbe Zahl teilen darf. |
Was Sie vorab wissen sollten
Hier steht, was Ihnen hilft, die Berechnung auf dieser Seite mit echtem Verständnis zu nutzen und nicht nur auf die Schaltfläche zu klicken.
Wenn Sie nicht weiterkommen, ist es der schnellste Weg, diese Themen noch einmal durchzugehen.
| Division mit Rest (Klasse 3 bis 4, 8–10 Jahre) |
|
| Vielfache und Teiler (Klasse 5 bis 6, 10–12 Jahre) |
|
| Negative Zahlen (Klasse 6 bis 7, 11–13 Jahre) |
|
| Potenzen (Klasse 6 bis 8, 11–14 Jahre) |
|
| Die Division mit Rest bei ganzen Zahlen (Oberstufe, 16–19 Jahre) |
|
Mit Excel berechnen
| Dividend a | -7 |
| Modul (Divisor) n | 3 |
| Mathematischer Rest (0 oder mehr) | =REST(B1;B2) |
| Quotient (Floor-Division) | =GANZZAHL(B1/B2) |
| Probe n × Quotient + Rest | =B2*B4+B3 |
| Rest im C/Java-Stil (zur 0 hin gerundet) | =B1-B2*KÜRZEN(B1/B2) |
| Ganze Zahl a | 38 |
| Ganze Zahl b | 14 |
| Modul n | 12 |
| Differenz a − b | =B1-B2 |
| Rest der Differenz : n | =REST(B4;B3) |
| Ergebnis (WAHR = kongruent) | =REST(B4;B3)=0 |
| Basis a | 7 |
| Exponent k | 100 |
| Modul n | 13 |
| Rest von a^1 | =REST(B1;B3) |
| Rest von a^2 (die Zeile darüber quadrieren, den Rest bilden) | =REST(B4^2;$B$3) |
| Rest von a^4 | =REST(B5^2;$B$3) |
| Rest von a^8 | =REST(B6^2;$B$3) |
| Rest von a^16 | =REST(B7^2;$B$3) |
| Rest von a^32 | =REST(B8^2;$B$3) |
| Rest von a^64 | =REST(B9^2;$B$3) |
| Rest zusammengesetzt für 100 = 64 + 32 + 4 | =REST(REST(B10*B9;$B$3)*B6;$B$3) |
Die Excel-Funktion REST liefert denselben „mathematischen Rest“ (0 oder mehr) wie dieser Rechner. Auch für negative Zahlen ist =REST(-7;3) gleich 2. Brauchen Sie den Rest im C/Java-Stil, nehmen Sie die letzte Zeile der ersten Tabelle, die mit KÜRZEN den Quotienten zur 0 hin rundet.
Die erste Tabelle teilt −7 durch 3: Der Rest ist 2 und der Quotient −3.
Die zweite Tabelle prüft 38 ≡ 14 (mod 12). Der Rest der Differenz 24 ist 0, deshalb erscheint WAHR (kongruent).
Die dritte Tabelle bestimmt den Rest von 7 hoch 100 geteilt durch 13 durch wiederholtes Quadrieren. Das Ergebnis ist 9. „^“ ist das Zeichen für die Potenz. Excel rechnet nur mit etwa 15 Stellen exakt. Hat der Modul n mehr als 7 Stellen, verlieren die Quadrate deshalb an Genauigkeit. Nutzen Sie dann den Rechner auf dieser Seite oder Python.
Mit Google Tabellen berechnen
| Dividend a | -7 |
| Modul (Divisor) n | 3 |
| Mathematischer Rest (0 oder mehr) | =REST(B1;B2) |
| Quotient (Floor-Division) | =GANZZAHL(B1/B2) |
| Probe n × Quotient + Rest | =B2*B4+B3 |
| Rest im C/Java-Stil (zur 0 hin gerundet) | =B1-B2*KÜRZEN(B1/B2) |
| Ganze Zahl a | 38 |
| Ganze Zahl b | 14 |
| Modul n | 12 |
| Differenz a − b | =B1-B2 |
| Rest der Differenz : n | =REST(B4;B3) |
| Ergebnis (WAHR = kongruent) | =REST(B4;B3)=0 |
| Basis a | 7 |
| Exponent k | 100 |
| Modul n | 13 |
| Rest von a^1 | =REST(B1;B3) |
| Rest von a^2 (die Zeile darüber quadrieren, den Rest bilden) | =REST(B4^2;$B$3) |
| Rest von a^4 | =REST(B5^2;$B$3) |
| Rest von a^8 | =REST(B6^2;$B$3) |
| Rest von a^16 | =REST(B7^2;$B$3) |
| Rest von a^32 | =REST(B8^2;$B$3) |
| Rest von a^64 | =REST(B9^2;$B$3) |
| Rest zusammengesetzt für 100 = 64 + 32 + 4 | =REST(REST(B10*B9;$B$3)*B6;$B$3) |
Mit Python berechnen
a = -7
n = 3
# Pythons % liefert denselben „mathematischen Rest“ wie dieser Rechner (0 oder mehr, wenn der Modul positiv ist)
print(a % n) # 2
# divmod liefert den Quotienten der Floor-Division und den Rest zusammen (a = n × Quotient + Rest)
quotient, remainder = divmod(a, n)
print(quotient, remainder) # -3 2
# Kongruenzprüfung: gilt 38 ≡ 14 (mod 12)? (prüfen, ob die Differenz ein Vielfaches von 12 ist)
print((38 - 14) % 12 == 0) # True
# Potenz mod n: Rest von 7 hoch 100 geteilt durch 13
# das pow mit 3 Argumenten nutzt wiederholtes Quadrieren, ist also selbst bei riesigen Exponenten sofort fertig
print(pow(7, 100, 13)) # 9
def c_style_mod(x, m):
# dasselbe Ergebnis wie % in C, Java und JavaScript (Quotient zur 0 hin gerundet)
r = x % m
if r != 0 and x < 0:
r -= m
return r
print(c_style_mod(-7, 3)) # -1
Die Formel in LaTeX und anderen mathematischen Schreibweisen (zum Kopieren)
a = n × q + r (0 ≤ r < n)
a = nq + r \quad (0 \le r < n)
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>a</mi><mo>=</mo><mi>n</mi><mi>q</mi><mo>+</mo><mi>r</mi>
<mo>,</mo>
<mn>0</mn><mo>≤</mo><mi>r</mi><mo><</mo><mi>n</mi>
</mrow>
</math>
a = n q + r, \ 0 <= r < n
{Quotient[a, n], Mod[a, n]}
q := floor(a/n); r := a mod n;
q = floor(a/n); r = mod(a, n);
a = nq + r (0 ≤ r < n)
a ≡ b (mod n) ⇔ a − b = n × m
a \equiv b \pmod{n} \iff a - b = nm
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>a</mi><mo>≡</mo><mi>b</mi>
<mspace width="0.3em"/>
<mo>(</mo><mi>mod</mi><mspace width="0.3em"/><mi>n</mi><mo>)</mo>
<mo>⇔</mo>
<mi>a</mi><mo>−</mo><mi>b</mi><mo>=</mo><mi>n</mi><mi>m</mi>
</mrow>
</math>
a -= b (mod n) iff a - b = n m
Mod[a - b, n] == 0
(a - b) mod n = 0;
mod(a - b, n) == 0
a ≡ b (mod n)
(a × b) mod n = {(a mod n) × (b mod n)} mod n
(a \times b) \bmod n = \{(a \bmod n)(b \bmod n)\} \bmod n
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mo>(</mo><mi>a</mi><mo>×</mo><mi>b</mi><mo>)</mo>
<mspace width="0.3em"/><mi>mod</mi><mspace width="0.3em"/><mi>n</mi>
<mo>=</mo>
<mo>{</mo>
<mo>(</mo><mi>a</mi><mspace width="0.3em"/><mi>mod</mi><mspace width="0.3em"/><mi>n</mi><mo>)</mo>
<mo>×</mo>
<mo>(</mo><mi>b</mi><mspace width="0.3em"/><mi>mod</mi><mspace width="0.3em"/><mi>n</mi><mo>)</mo>
<mo>}</mo>
<mspace width="0.3em"/><mi>mod</mi><mspace width="0.3em"/><mi>n</mi>
</mrow>
</math>
(a * b) mod n = ((a mod n) * (b mod n)) mod n
Mod[a b, n] == Mod[Mod[a, n] Mod[b, n], n]
(a * b) mod n = ((a mod n) * (b mod n)) mod n;
mod(a*b, n) == mod(mod(a, n)*mod(b, n), n)
(a×b) mod n = ((a mod n)×(b mod n)) mod n
a ≡ b, c ≡ d (mod n) ⇒ a+c ≡ b+d, a−c ≡ b−d, a×c ≡ b×d (mod n)
a \equiv b,\ c \equiv d \pmod{n} \Rightarrow a + c \equiv b + d,\ a - c \equiv b - d,\ ac \equiv bd \pmod{n}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>a</mi><mo>+</mo><mi>c</mi><mo>≡</mo><mi>b</mi><mo>+</mo><mi>d</mi>
<mo>,</mo>
<mi>a</mi><mo>−</mo><mi>c</mi><mo>≡</mo><mi>b</mi><mo>−</mo><mi>d</mi>
<mo>,</mo>
<mi>a</mi><mi>c</mi><mo>≡</mo><mi>b</mi><mi>d</mi>
<mspace width="0.3em"/>
<mo>(</mo><mi>mod</mi><mspace width="0.3em"/><mi>n</mi><mo>)</mo>
</mrow>
</math>
a + c -= b + d, \ a - c -= b - d, \ a c -= b d (mod n)
Mod[a + c, n] == Mod[b + d, n] && Mod[a - c, n] == Mod[b - d, n] && Mod[a c, n] == Mod[b d, n]
(a + c) mod n = (b + d) mod n;
mod(a + c, n) == mod(b + d, n)
a + c ≡ b + d (mod n)
Die Berechnung von ChatGPT ausführen lassen
Sie sind ein Rechenassistent für Mathematik (Eigenschaften ganzer Zahlen, Zahlentheorie). Führen Sie die folgende Berechnung aus, indem Sie tatsächlich Python-Code ausführen, und stützen Sie Ihre Antwort nur auf die Zahlen aus dem Ergebnis der Ausführung (nicht im Kopf rechnen und nicht schätzen). Berechnen Sie die folgenden 3 Aufgaben. 1. Den mathematischen Rest von −7 geteilt durch 3 (so gewählt, dass er mindestens 0 ist) und den Quotienten 2. Ob 38 ≡ 14 (mod 12) gilt (zeigen Sie auch, ob die Differenz ein Vielfaches von 12 ist) 3. Den Rest von 7 hoch 100 geteilt durch 13 (verwenden Sie pow(7, 100, 13)) Verwenden Sie in Python %, divmod und pow(Basis, Exponent, Modul), und zeigen Sie die verwendeten Formeln und die Zahlen aus dem Ergebnis der Ausführung.
Anleitung
-
1Zahlen eingebenGeben Sie die Zahlen, mit denen Sie rechnen möchten, in die Eingabefelder ein
-
2BerechnenKlicken Sie auf die Schaltfläche „Berechnen“
-
3Ergebnis ablesenDas Ergebnis erscheint sofort. Auf derselben Seite finden Sie auch den Rechenweg und die Erklärung der Formel
Die Vorteile von DataChef
Kein Fachwissen nötig – einfach und intuitiv
Keine persönlichen Daten erforderlich
Die Datei wird nach dem Download automatisch gelöscht
Keine Quellenangabe nötig
Keine vorherige Genehmigung erforderlich
