Modulo-Rechner
Die Modulo- (oder “mod”) Operation gibt den Rest nach der ganzzahligen Division zurück: 17 mod 5 = 2, weil 17 = 3·5 + 2. Es ist das Herz der Uhr-Arithmetik, Kryptographie, Hash-Funktionen und des “jeden N-ten Zeile”-Musters in SQL. Dieser Rechner akzeptiert ganze oder Dezimalzahlen, zeigt den Quotienten und Rest explizit an und behandelt die Unterschiede in der Vorzeichenkonvention zwischen den Sprachen (Pythons % ≠ Cs % für negative Zahlen).
Wie man a mod b berechnet
-
1
Geben Sie den Dividenden (a) und den Divisor (b) ein
Beliebige Zahlen; Dezimalzahlen und negative Zahlen sind in Ordnung.
-
2
Wählen Sie die Vorzeichenkonvention
Abgeschnittene Division (C, Java, Go), abgerundete Division (Python, Ruby, mathematische Konvention).
-
3
Lesen Sie den Quotienten und den Rest
a = q·b + r, mit der gewählten Regel für das Vorzeichen von r.
-
4
Sehen Sie den mathematischen Ausdruck
Eingesetzte Werte machen jeden Schritt sichtbar.
Zwei Konventionen für negative Zahlen
Für positive Operanden stimmen alle Konventionen überein: 17 mod 5 = 2. Für negative Zahlen unterscheiden sich die Sprachen:
| Sprache | -17 mod 5 |
Konvention |
|---|---|---|
| Python, Ruby | 3 | Abgerundet |
| C, Java, Go, JS | -2 | Abgeschnitten |
| Mathematik-Lehrbücher | 3 | Abgerundet (gewöhnlich) |
Abgerundete Division: Der Quotient wird auf −∞ gerundet. Der Rest hat immer das Vorzeichen des Divisors: dasselbe Vorzeichen wie b.
Abgeschnittene Division: Der Quotient wird auf null gerundet. Der Rest hat das Vorzeichen des Dividenden: dasselbe Vorzeichen wie a.
Für a = -17, b = 5:
- Abgeschnitten: q = -3 (auf 0 gerundet), r = -17 − (-3)·5 = -2.
- Abgerundet: q = -4 (auf −∞ gerundet), r = -17 − (-4)·5 = 3.
Beide sind korrekt, je nach Konvention. Wählen Sie die, die zu Ihrer Sprache passt.
Wo Modulo auftaucht
- Zeit. Minuten in einer Stunde, Wochentage, Sekunden in einem Tag, alles Mod-Arithmetik.
- Hash-Tabellen.
hash(key) mod table_sizewählt einen Eimer aus. - Round-Robin-Planung.
task_i mod worker_countweist Arbeit zu. - Kryptographie. RSA und Diffie-Hellman basieren auf mod
nmit großen Primzahlen. - Jede N-te Zeile. In SQL:
WHERE id % 3 = 0. - Gerade/Ungerade-Prüfung.
n mod 2 == 0bedeutet gerade. - Wechselnde Muster. Zeilenstreifen, jedes zweite Element einfärben.
- Zirkuläre Puffer.
(index + 1) mod sizewickelt sich um.
Nützliche Identitäten
(a + b) mod n = ((a mod n) + (b mod n)) mod n(a · b) mod n = ((a mod n) · (b mod n)) mod n(a^k) mod nkann durch schnelle modulare Exponentiation in O(log k) berechnet werden, entscheidend für Kryptographie mit großen Zahlen.a mod 1 = 0für jede ganze Zahl a.a mod a = 0.
Dezimal-Modulo
Für reelle Zahlen ist die natürliche Definition a mod b = a − b · floor(a/b). 7.5 mod 2.5 = 0, weil 7.5 ein genaues Vielfaches ist. 7.6 mod 2.5 = 0.1.
Javascripts %-Operator funktioniert mit reellen Zahlen; Pythons fmod macht abgeschnittenes reelles Mod; Pythons % macht abgerundetes reelles Mod.
Anwendungsbeispiele
100 mod 7: 100 = 14·7 + 2, also Rest 2.25 mod 4: 25 = 6·4 + 1, also Rest 1.-10 mod 3(abgerundet):-10 = -4·3 + 2, Rest 2. (Abgeschnitten würde-1ergeben.)17.5 mod 5: 17.5 = 3·5 + 2.5, Rest 2.5.
Häufig gestellte Fragen
Meistens sind sie Synonyme. Formal impliziert “Modulo” oft die mathematische (abgerundete) Konvention, während “Rest” oft auf die abgeschnittene (C-Stil) Variante verweist. Die Namen tauchen in den Sprachdokumentationen auf; wenn es wichtig ist, geben Sie die Konvention an.
Python folgt der mathematischen Konvention (abgerundet), die das Vorzeichen des Rests mit dem des Divisors übereinstimmt. C folgt der Hardware-ALU-Konvention (abgeschnitten), bei der das Vorzeichen des Rests mit dem des Dividenden übereinstimmt. Keines ist falsch; es sind unterschiedliche Entscheidungen.
Nein, Division durch Null ist undefiniert. Der Rechner gibt einen Fehler für b = 0 zurück.
In der Regel ja. Überprüfen Sie die Spezifikation Ihrer Sprache zur Handhabung von negativen Zahlen, Python und Ruby unterscheiden sich von C, Java, Go und JavaScript.
Für RSA-ähnliche Mathematik mit 2048-Bit-Zahlen verwenden Sie eine spezielle Bibliothek (Pythons pow(a, b, n), Javas BigInteger.modPow). Dieser Rechner behandelt alltägliche Werte, keine kryptografischen.
Verwandte Tools
Geländerstäbe-Rechner
Geben Sie die lichte Weite, die Stabbreite und den maximal zulässigen Abstand ein und erhalten Sie die genaue Anzahl der Geländerstäbe sowie den gleichmäßigen Abstand zwischen den Stäben, ohne dass eine Lücke das zulässige Maß überschreitet.
Lochkreisrechner
Berechnen Sie Teilkreisdurchmesser, Winkelabstand und X/Y-Koordinaten gleichmäßig verteilter Bohrungen samt Drehung, Versatz und CSV-Export.
Luftkanal-Größenrechner
Schätze runde oder rechteckige Kanalmaße aus Volumenstrom und Zielgeschwindigkeit oder prüfe die Luftgeschwindigkeit in einem vorhandenen Kanal – metrisch oder imperial.
Filament-Gewichtsrechner
Rechnen Sie Länge und Masse von 3D-Druck-Filament um und schätzen Sie aus Brutto- und Taragewicht den Spulenrest samt Materialwert.
Regentonnen-Rechner
Berechne Dachabfluss, tatsächlich gespeichertes Wasser, Überlauf und Reichweite für ein Regenereignis.
Betonrechner
Berechnen Sie Betonmengen für Platten, Fundamente, Stützen und Wände. Ermitteln Sie m³, Kubikyard, Sackmengen und einen sinnvollen Zuschlag.
Tool in anderen Sprachen verfügbar
- Modulokalkylator [SV]
- حاسبة باقي القسمة (Modulo) [AR]
- เครื่องคำนวณโมดูโล (Modulo) [TH]
- Calculadora de Módulo [ES]
- Calculateur de Modulo [FR]
- Kalkulator Modulo [ID]
- 모듈로 계산기 [KO]
- Modulo-calculator [NL]
- Kalkulator modulo [PL]
- Máy tính modulo [VI]
- 剰余計算機 [JA]
- Calculadora de Módulo [PT]
- Modulo Calculator [EN]
- Calcolatore Modulo [IT]
- Калькулятор остатка от деления [RU]
- Modulo Hesaplayıcı [TR]
- 取模计算器 [ZH]