Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
modul:m323:learningunits:lu01:loesungen:tracetable2 [2024/08/06 17:04] – angelegt kmaurizi | modul:m323:learningunits:lu01:loesungen:tracetable2 [2024/08/06 17:04] (aktuell) – kmaurizi | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== LU01.L07 - Rekursiver GGT und Trace Table ====== | ====== LU01.L07 - Rekursiver GGT und Trace Table ====== | ||
+ | |||
+ | ===== Algorithmus: | ||
+ | <code python> | ||
+ | def ggt(a, b): | ||
+ | if b == 0: | ||
+ | return a | ||
+ | else: | ||
+ | return ggt(b, a % b) | ||
+ | |||
+ | # Beispielwerte | ||
+ | a = 48 | ||
+ | b = 18 | ||
+ | ergebnis = ggt(a, b) | ||
+ | print(f' | ||
+ | </ | ||
+ | |||
+ | ===== Trace Table: ===== | ||
+ | |||
+ | ^ Schritt ^ a ^ b ^ a % b ^ Rekursiver Aufruf (ggt(b, a % b)) ^ Rückgabewert ^ | ||
+ | | 1 | 48 | 18 | 12 | ggt(18, 12) | - | | ||
+ | | 2 | 18 | 12 | 6 | ggt(12, 6) | - | | ||
+ | | 3 | 12 | 6 | 0 | ggt(6, 0) | - | | ||
+ | | 4 | 6 | 0 | - | - | 6 | | ||
+ | |||
+ | ===== Erklärung des Trace Tables: ===== | ||
+ | |||
+ | * **Schritt 1**: Der Algorithmus beginnt mit den Werten '' | ||
+ | * **Schritt 2**: Der Algorithmus wird nun mit '' | ||
+ | * **Schritt 3**: Jetzt sind die Werte '' | ||
+ | * **Schritt 4**: In diesem Schritt ist '' | ||
[[https:// | [[https:// |