Lernfabrik

Musterlösungen – Div und Mod

Hinweis: Die grün markierten Werte sind die Endergebnisse. Alle Zwischenschritte sind nachvollziehbar dargestellt.

Lösung Aufgabe 1: Modulo-Operator
Schwierigkeitsgrad: Einfach

Definition: a mod b liefert den Rest der ganzzahligen Division von a durch b.

(a) 25 mod 7

25 ÷ 7 = 3 Rest 4  (denn 3 · 7 = 21, 25 − 21 = 4)

= 4

(b) 12 mod 3

12 ÷ 3 = 4 Rest 0  (denn 4 · 3 = 12, 12 − 12 = 0)

= 0

(c) 50 mod 9

50 ÷ 9 = 5 Rest 5  (denn 5 · 9 = 45, 50 − 45 = 5)

= 5

(d) 18 mod 5

18 ÷ 5 = 3 Rest 3  (denn 3 · 5 = 15, 18 − 15 = 3)

= 3

(e) 7 mod 3

7 ÷ 3 = 2 Rest 1  (denn 2 · 3 = 6, 7 − 6 = 1)

= 1

Lösung Aufgabe 2: Div-Operator
Schwierigkeitsgrad: Einfach

Definition: a div b liefert den ganzzahligen Anteil der Division von a durch b (Nachkommastellen werden abgeschnitten).

(a) 25 div 7

25 ÷ 7 = 3,571… → ganzzahliger Anteil: 3

= 3

(b) 15 div 4

15 ÷ 4 = 3,75 → ganzzahliger Anteil: 3

= 3

(c) 50 div 8

50 ÷ 8 = 6,25 → ganzzahliger Anteil: 6

= 6

(d) 27 div -6

27 ÷ (−6) = −4,5 → ganzzahliger Anteil: −4

= −4

Achtung bei negativen Zahlen: In vielen Programmiersprachen (z. B. Python, Java, C) wird bei der Ganzzahldivision in Richtung Null abgeschnitten (truncated). Das Ergebnis von 27 div −6 ist dann −4 und nicht −5.
Lösung Aufgabe 3
Schwierigkeitsgrad: Mittel

(a) Wie kann mit Hilfe einer Modulo-Operation entschieden werden, ob eine Zahl gerade oder ungerade ist?

Man berechnet zahl mod 2:

• Ist das Ergebnis 0, ist die Zahl gerade.

• Ist das Ergebnis 1, ist die Zahl ungerade.

Begründung: Eine gerade Zahl lässt sich ohne Rest durch 2 teilen, eine ungerade Zahl lässt den Rest 1.

Beispiele:

10 mod 2 = 0 → 10 ist gerade

7 mod 2 = 1 → 7 ist ungerade

Ergebnis: zahl mod 2 == 0 → gerade, sonst ungerade.

(b) Es ist 15 Uhr. Wie spät ist es in 300 Stunden?

Ein Tag hat 24 Stunden. Wir interessieren uns nur für den Rest bei Division durch 24:

300 mod 24 = ?

300 ÷ 24 = 12 Rest 12  (denn 12 · 24 = 288, 300 − 288 = 12)

Also: 15 Uhr + 12 Stunden = 27 Uhr → 27 − 24 = 3 Uhr

= Es ist 3 Uhr (nachts).

Merke: Modulo eignet sich hervorragend für zyklische Berechnungen wie Uhrzeiten, Wochentage oder Kalenderberechnungen. Man rechnet immer „im Kreis" mit der Periodenlänge (hier: 24).