Je hebt ondertussen veel verschillende dingen geleerd over programmeren in Python, zoals variabelen, datatypes, operatoren, de print functie, for-loops, en hoe je een subtotaal kan bijhouden. In deze oefening ga je al je kennis combineren om een algoritme te maken. Dat wil zeggen dat je moet plannen hoe de functie stap voor stap moet werken, en het daarna pas kan implementeren.



Achtergrond

De grootste gemene deler van twee getallen is het grootste getal dat beide getallen kunnen delen zonder een rest over te houden. Neem bijvoorbeeld 12 en 18:

Of neem bijvoorbeeld 3 en 10:

Merk op dat alle gehele getallen deelbaar zijn door 1, dus de grootste gemene deler van twee getallen is altijd minstens 1.



Opdracht

Maak een functie die twee gehele getallen (integers) als invoer neemt. De functie bepaalt de grootste gemene deler van de twee getallen en geeft deze terug als een geheel getal.

input-output verwachtingen
Invoer Verwachte returnwaarde Uitleg
6 12 is deelbaar door: 1, 2, 3, 4, 6, en 12.
18 is deelbaar door: 1, 2, 3, 6, 9, en 18.
De grootste deler die ze met elkaar gemeen hebben is 6.
1 3 is deelbaar door: 1 en 3.
5 is deelbaar door: 1 en 5.
De grootste deler die ze met elkaar gemeen hebben is 1.
2 4 is deelbaar door: 1, 2, en 4.
6 is deelbaar door: 1, 2, 3, en 6.
De grootste deler die ze met elkaar gemeen hebben is 2.
5 15 is deelbaar door: 1, 3, 5, en 15.
25 is deelbaar door: 1, 5, en 25.
De grootste deler die ze met elkaar gemeen hebben is 5.
1 1 is enkel deelbaar door 1 getal: 1.
42 84 is deelbaar door: 1, 2, 3, 4, 6, 7, 12, 14, 21, 28, 42, en 84.
126 is deelbaar door: 1, 2, 3, 6, 7, 9, 14, 18, 21, 42, 63, en 126.
De grootste deler die ze met elkaar gemeen hebben is 42.



Tip (twee voorwaarden tegelijk)

Je kan in een if-statement meerdere voorwaarden tegelijk controleren door gebruik te maken van and. Bijvoorbeeld:

if x > 2 and x < 10:
    print("x is tussen 2 en 10.")

of

if x > 0 and y > 0:
    print("x en y zijn allebei positief.")