LU04.A05: Grösster gemeinsamer Teiler
Lösen Sie die Aufgabe mit BlockPy oder Codingrooms
Laden Sie einen Screenshot ihres Blockly-Ablaufs hoch.
Aufgabe
Bei mathematischen Programmen wird häufig der grösste gemeinsame Teiler (ggT) von zwei natürlichen Zahlen benötigt. Aus dem Mathematik-Unterricht kennen sie vermutlich die Methode mit der Primfaktorzerlegung.
Diese Zerlegung ist sehr schwierig zu programmieren. Wesentlich einfacher ist ein Algorithmus der ursprünglich von Euklid entwickelt wurde:
- Der Benutzer gibt die beiden Zahlen
number1
undnumber2
ein. - Solange die
number2 ≠ 0
ist,- berechnet das Programm den ganzzahligen
rest
ausnumber1 / number2
, - nun wird der Wert von
number2
wird innumber1
gespeichert, - und der Wert von
rest
innumber2
gespeichert.
- Gib den Wert der Variable
number1
aus.
Die mathematische Funktion Modulo berechnet den ganzzahligen Rest einer Division. Zum Beispiel:
342 geteilt in 5 ergibt 68 und den Rest 2, also 342 Modulo 5 = 2
.