Aufgabenbeispiele von MGK Klasse 10

Durch Aktualisieren des Browsers (z.B. mit Taste F5) kann man neue Beispielaufgaben sehen


Modulo addieren

Beispiel:

Berechne ohne WTR: (14998 - 601) mod 3.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(14998 - 601) mod 3 ≡ (14998 mod 3 - 601 mod 3) mod 3.

14998 mod 3 ≡ 1 mod 3 kann man relativ leicht bestimmen, weil ja 14998 = 15000-2 = 3 ⋅ 5000 -2 = 3 ⋅ 5000 - 3 + 1.

601 mod 3 ≡ 1 mod 3 kann man relativ leicht bestimmen, weil ja 601 = 600+1 = 3 ⋅ 200 +1.

Somit gilt:

(14998 - 601) mod 3 ≡ (1 - 1) mod 3 ≡ 0 mod 3.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (19 ⋅ 78) mod 7.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(19 ⋅ 78) mod 7 ≡ (19 mod 7 ⋅ 78 mod 7) mod 7.

19 mod 7 ≡ 5 mod 7 kann man relativ leicht bestimmen, weil ja 19 = 14 + 5 = 2 ⋅ 7 + 5 ist.

78 mod 7 ≡ 1 mod 7 kann man relativ leicht bestimmen, weil ja 78 = 77 + 1 = 11 ⋅ 7 + 1 ist.

Somit gilt:

(19 ⋅ 78) mod 7 ≡ (5 ⋅ 1) mod 7 ≡ 5 mod 7.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 7138 mod 797.

Lösung einblenden

Die 8 im Exponent ist ja ein reine 2er-Potenz (23).

Deswegen quadrieren wir einfach mit jedem Schritt das Ergebnis und kommen so immer eine 2er-Potenz im Exponenten höher:

Zur technischen Durchführung mit einem TI-WTR bietet sich folgende Vorgehensweise an:
1. 713 -> x
2. mod(x²,797) -> x

  • den Pfeil "->" erhält man durch Drücken der [sto->]-Taste
  • die x-Taste ist direkt darüber
  • "mod" erhält man durch [math]->NUM->8:mod
  • das Komma "," erhält man durch Drücken von [2nd][.]

1: 7131=713

2: 7132=7131+1=7131⋅7131 ≡ 713⋅713=508369 ≡ 680 mod 797

4: 7134=7132+2=7132⋅7132 ≡ 680⋅680=462400 ≡ 140 mod 797

8: 7138=7134+4=7134⋅7134 ≡ 140⋅140=19600 ≡ 472 mod 797

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 229153 mod 367.

Lösung einblenden

Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 153 (grauer Kasten).

Dann schauen wir die Binärdarstellung von 153 an und zerlegen 153 in eine Summer von 2er-Potenzen:

153 = 128+16+8+1

1: 2291=229

2: 2292=2291+1=2291⋅2291 ≡ 229⋅229=52441 ≡ 327 mod 367

4: 2294=2292+2=2292⋅2292 ≡ 327⋅327=106929 ≡ 132 mod 367

8: 2298=2294+4=2294⋅2294 ≡ 132⋅132=17424 ≡ 175 mod 367

16: 22916=2298+8=2298⋅2298 ≡ 175⋅175=30625 ≡ 164 mod 367

32: 22932=22916+16=22916⋅22916 ≡ 164⋅164=26896 ≡ 105 mod 367

64: 22964=22932+32=22932⋅22932 ≡ 105⋅105=11025 ≡ 15 mod 367

128: 229128=22964+64=22964⋅22964 ≡ 15⋅15=225 ≡ 225 mod 367

229153

= 229128+16+8+1

= 229128⋅22916⋅2298⋅2291

225 ⋅ 164 ⋅ 175 ⋅ 229 mod 367
36900 ⋅ 175 ⋅ 229 mod 367 ≡ 200 ⋅ 175 ⋅ 229 mod 367
35000 ⋅ 229 mod 367 ≡ 135 ⋅ 229 mod 367
30915 mod 367 ≡ 87 mod 367

Es gilt also: 229153 ≡ 87 mod 367

erweiterter Euklid'scher Algorithmus

Beispiel:

Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-101-Inverse zur Zahl 70.

Also bestimme x, so dass 70 ⋅ x ≡ 1 mod 101 gilt:

Lösung einblenden

Berechnung des größten gemeinsamen Teilers von 101 und 70

=>101 = 1⋅70 + 31
=>70 = 2⋅31 + 8
=>31 = 3⋅8 + 7
=>8 = 1⋅7 + 1
=>7 = 7⋅1 + 0

also gilt: ggt(101,70)=1

Jetzt formen wir jede Zeile von unten nach oben um indem wir das Prokukt auf die andere Seite bringen.
Wir starten mit der zweitletzten Zeile:

1= 8-1⋅7
7= 31-3⋅8 eingesetzt in die Zeile drüber: 1 = 1⋅8 -1⋅(31 -3⋅ 8)
= 1⋅8 -1⋅31 +3⋅ 8)
= -1⋅31 +4⋅ 8 (=1)
8= 70-2⋅31 eingesetzt in die Zeile drüber: 1 = -1⋅31 +4⋅(70 -2⋅ 31)
= -1⋅31 +4⋅70 -8⋅ 31)
= 4⋅70 -9⋅ 31 (=1)
31= 101-1⋅70 eingesetzt in die Zeile drüber: 1 = 4⋅70 -9⋅(101 -1⋅ 70)
= 4⋅70 -9⋅101 +9⋅ 70)
= -9⋅101 +13⋅ 70 (=1)

Es gilt also: ggt(101,70)=1 = -9⋅101 +13⋅70

oder wenn man -9⋅101 auf die linke Seite bringt:

1 +9⋅101 = +13⋅70

Es gilt also: 13⋅70 = 9⋅101 +1

Somit 13⋅70 = 1 mod 101

13 ist also das Inverse von 70 mod 101

Schlüsselpaar für RSA

Beispiel:

Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 41 und q = 71. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.