Das Kefk Network Wiki befindet sich im Testbetrieb.


Modulo (Rest)

Aus Kefk.

Wechseln zu: Navigation, Suche
<imagemap>-Fehler: Bild ist ungültig oder nicht vorhanden Die Artikel Division mit Rest und Modulo (Rest) überschneiden sich thematisch. Hilf mit, die Artikel besser voneinander abzugrenzen oder zu vereinigen. Die Diskussion über diese Überschneidungen findet hier statt. Bitte äußere dich dort, bevor du den Baustein entfernst. Markus Schmaus 11:52, 3. Nov. 2006 (CET)
Wikipedia
Dieses Dokument entstammt in seiner ersten oder einer späteren Version der deutschsprachigen Wikipedia. Es ist dort zu finden unter dem Stichwort Modulo_%28Rest%29, die Liste der bisherigen Autoren befindet sich in der Versionsliste; die Originalfassung kann dort auch bearbeitet werden. Alle Texte der Wikipedia und ihre Derivate stehen unter der GNU-Lizenz für freie Dokumentation.


Modulo (mit Betonung auf der ersten Silbe) oder mod ist eine insbesondere in der Informatik verbreitete Funktion, die den Rest aus der Division zweier Ganzzahlen angibt: (a mod m) bezeichnet also den (ganzzahligen) Rest aus der Division a:m. (In Programmiersprachen wird diese Funktion häufig durch den Operator % gekennzeichnet).

Einfaches Beispiel: 7 mod 2 = 1 (7:2 = 3 Rest 1; ebenso ist 7 mod 3 = 1)

Es gibt zwei Varianten der Modulo-Funktion, die für negative Argumente unterschiedliche Ergebnisse liefern:

  • "Mathematische Variante":
(a\;\bmod\;m)= a - \left \lfloor \frac{a}{m} \right \rfloor \cdot m
Die Gaußklammer \lfloor \cdot \rfloor bezeichnet den ganzzahligen Wert der Division a:m, also ohne den Rest. Für diese Variante gilt stets
(a + km)\;\bmod\;m = a\;\bmod\;m\quad(k\in\mathbb Z),
aber im Allgemeinen ist
 (-a)\;\bmod\;m \ne-(a\;\bmod\;m), z. B. (-2)\;\bmod3=1\ne-2=-(2\;\bmod\;3).
Ist m positiv, so ist a\;\bmod\;m\geq0 für alle a.
  • "Symmetrische Variante":
(a\;\bmod\;m) = a - m\cdot (a\,\operatorname{div}\,m);
dabei bezeichnet a\,\operatorname{div}\,m den zur Null hin gerundeten Quotienten a / m. Für diese Variante gilt
( − a)mod m = − (amod m),
aber im Allgemeinen
(a + km)\;\bmod\;m\ne a\;\bmod\;m, z. B. (1 - 3)\;\bmod\;3=(-2)\;\bmod\;3=-2\ne 1=1\;\bmod\;3.
a\;\bmod\;m hat stets dasselbe Vorzeichen wie a, oder es gilt a\;\bmod\;m = 0.

In Programmiersprachen ist üblicherweise die zweite Variante implementiert. Gilt a\geq 0 und m > 0, so ergeben beide Varianten dasselbe Ergebnis.

Beispiele:

  • 17 mod 3 = 2, da 17 = 5×3 + 2 („drei passt fünf mal in 17 und es bleiben zwei übrig“ – der Rest ist also zwei)
  • 2 mod 3 = 2, da 2 = 0×3 + 2
  • 3 mod 3 = 0, da 3 = 1×3 + 0

Wenn (a\;\bmod\;n) = (b\;\bmod\;n), dann folgt nicht daraus, dass a = b ist, sondern nur, dass sich a und b um ein ganzzahliges Vielfaches von n unterscheiden. Eine derartige Gleichung kann auch einfacher mit Hilfe der in der Zahlentheorie verbreiteten Kongruenzrelation geschrieben werden.

Praktische Anwendungen

Literatur

  • "Basiswissen Zahlentheorie - Eine Einführung in Zahlen und Zahlenbereiche" - K. Reiss, G. Schmieder, Springer-Verlag Berlin Heidelberg New York, ISBN 3-540-21248-5

Siehe auch

Wikipedia
Dieses Dokument entstammt in seiner ersten oder einer späteren Version der deutschsprachigen Wikipedia. Es ist dort zu finden unter dem Stichwort Modulo_%28Rest%29, die Liste der bisherigen Autoren befindet sich in der Versionsliste; die Originalfassung kann dort auch bearbeitet werden. Alle Texte der Wikipedia und ihre Derivate stehen unter der GNU-Lizenz für freie Dokumentation.
Persönliche Werkzeuge