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: (200 + 1996) mod 5.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(200 + 1996) mod 5 ≡ (200 mod 5 + 1996 mod 5) mod 5.

200 mod 5 ≡ 0 mod 5 kann man relativ leicht bestimmen, weil ja 200 = 200+0 = 5 ⋅ 40 +0.

1996 mod 5 ≡ 1 mod 5 kann man relativ leicht bestimmen, weil ja 1996 = 1900+96 = 5 ⋅ 380 +96.

Somit gilt:

(200 + 1996) mod 5 ≡ (0 + 1) mod 5 ≡ 1 mod 5.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (15 ⋅ 21) mod 7.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(15 ⋅ 21) mod 7 ≡ (15 mod 7 ⋅ 21 mod 7) mod 7.

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

21 mod 7 ≡ 0 mod 7 kann man relativ leicht bestimmen, weil ja 21 = 21 + 0 = 3 ⋅ 7 + 0 ist.

Somit gilt:

(15 ⋅ 21) mod 7 ≡ (1 ⋅ 0) mod 7 ≡ 0 mod 7.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 77064 mod 971.

Lösung einblenden

Die 64 im Exponent ist ja ein reine 2er-Potenz (26).

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. 770 -> x
2. mod(x²,971) -> 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: 7701=770

2: 7702=7701+1=7701⋅7701 ≡ 770⋅770=592900 ≡ 590 mod 971

4: 7704=7702+2=7702⋅7702 ≡ 590⋅590=348100 ≡ 482 mod 971

8: 7708=7704+4=7704⋅7704 ≡ 482⋅482=232324 ≡ 255 mod 971

16: 77016=7708+8=7708⋅7708 ≡ 255⋅255=65025 ≡ 939 mod 971

32: 77032=77016+16=77016⋅77016 ≡ 939⋅939=881721 ≡ 53 mod 971

64: 77064=77032+32=77032⋅77032 ≡ 53⋅53=2809 ≡ 867 mod 971

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 599217 mod 991.

Lösung einblenden

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

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

217 = 128+64+16+8+1

1: 5991=599

2: 5992=5991+1=5991⋅5991 ≡ 599⋅599=358801 ≡ 59 mod 991

4: 5994=5992+2=5992⋅5992 ≡ 59⋅59=3481 ≡ 508 mod 991

8: 5998=5994+4=5994⋅5994 ≡ 508⋅508=258064 ≡ 404 mod 991

16: 59916=5998+8=5998⋅5998 ≡ 404⋅404=163216 ≡ 692 mod 991

32: 59932=59916+16=59916⋅59916 ≡ 692⋅692=478864 ≡ 211 mod 991

64: 59964=59932+32=59932⋅59932 ≡ 211⋅211=44521 ≡ 917 mod 991

128: 599128=59964+64=59964⋅59964 ≡ 917⋅917=840889 ≡ 521 mod 991

599217

= 599128+64+16+8+1

= 599128⋅59964⋅59916⋅5998⋅5991

521 ⋅ 917 ⋅ 692 ⋅ 404 ⋅ 599 mod 991
477757 ⋅ 692 ⋅ 404 ⋅ 599 mod 991 ≡ 95 ⋅ 692 ⋅ 404 ⋅ 599 mod 991
65740 ⋅ 404 ⋅ 599 mod 991 ≡ 334 ⋅ 404 ⋅ 599 mod 991
134936 ⋅ 599 mod 991 ≡ 160 ⋅ 599 mod 991
95840 mod 991 ≡ 704 mod 991

Es gilt also: 599217 ≡ 704 mod 991

erweiterter Euklid'scher Algorithmus

Beispiel:

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

Also bestimme x, so dass 30 ⋅ x ≡ 1 mod 83 gilt:

Lösung einblenden

Berechnung des größten gemeinsamen Teilers von 83 und 30

=>83 = 2⋅30 + 23
=>30 = 1⋅23 + 7
=>23 = 3⋅7 + 2
=>7 = 3⋅2 + 1
=>2 = 2⋅1 + 0

also gilt: ggt(83,30)=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= 7-3⋅2
2= 23-3⋅7 eingesetzt in die Zeile drüber: 1 = 1⋅7 -3⋅(23 -3⋅ 7)
= 1⋅7 -3⋅23 +9⋅ 7)
= -3⋅23 +10⋅ 7 (=1)
7= 30-1⋅23 eingesetzt in die Zeile drüber: 1 = -3⋅23 +10⋅(30 -1⋅ 23)
= -3⋅23 +10⋅30 -10⋅ 23)
= 10⋅30 -13⋅ 23 (=1)
23= 83-2⋅30 eingesetzt in die Zeile drüber: 1 = 10⋅30 -13⋅(83 -2⋅ 30)
= 10⋅30 -13⋅83 +26⋅ 30)
= -13⋅83 +36⋅ 30 (=1)

Es gilt also: ggt(83,30)=1 = -13⋅83 +36⋅30

oder wenn man -13⋅83 auf die linke Seite bringt:

1 +13⋅83 = +36⋅30

Es gilt also: 36⋅30 = 13⋅83 +1

Somit 36⋅30 = 1 mod 83

36 ist also das Inverse von 30 mod 83

Schlüsselpaar für RSA

Beispiel:

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