Menu
CoddyTech

Greatest Common Divisor

Du erhältst zwei positive ganze Zahlen a und b. Gib ihren größten gemeinsamen Teiler zurück: die größte ganze Zahl, die beide ohne Rest teilt.

Zum Beispiel sind die Zahlen, die sowohl 8 als auch 12 teilen, 1, 2 und 4, daher lautet die Antwort 4.

Funktion

gcd(a: integer, b: integer) → integer
ainteger
die erste positive ganze Zahl
binteger
die zweite positive ganze Zahl
Gibt zurückinteger
die größte ganze Zahl, die sowohl a als auch b teilt

Einschränkungen

  • 1 ≤ a ≤ 109
  • 1 ≤ b ≤ 109

Beispiele

Eingabe
a = 12b = 18
Ausgabe
6
Erklärung
Die Teiler von 12 sind 1, 2, 3, 4, 6 und 12; die Teiler von 18 sind 1, 2, 3, 6, 9 und 18. Der größte Wert auf beiden Listen ist 6.

lock icon+14 versteckte Tests beim Einreichen

challenge icon

Weiterführende Frage

Kannst du den Algorithmus von Euklid so erweitern, dass er auch ganze Zahlen x und y zurückgibt, für die a × x + b × y = gcd(a, b) gilt?

Code zurücksetzen
def gcd(a, b):
    # Schreibe hier den Code
Testfälle

Fall 1

Fall 2

Fall 3

Eingabe

a = 12
b = 18

Erwartet

6