Opgaver i denne lektion  forrige -- Tastaturgenvej: 'p'        Gå til slide, hvor denne opgave er tilknyttet -- Tastaturgenvej: 'u'  

Opgave 4.6
Ligefrem programmering af 'største fælles divisor'


I denne lektion har vi set at der findes fine, smarte, og effektive algoritmer til at finde den største fælles divisor af to positive heltal. Se her.

I denne opgave skal du skrive et ligefrem program, der på en simpel og intuitiv måde finder den største fælles divisor af to ikke-negative heltal a og b. Programmet skal på en systematisk måde - med brug af en løkke - afprøve om forskellig, nøje udvalgte tal er divisorer i både a og b. Overvej omhyggeligt hvordan løkken starter, og hvordan den slutter. Programmet skal finde den største sådanne divisor: altså største fælles divisor. Overvej også om der er nogle specialtilfælde vi skal tage os af, inden vi starter løkken?

Programmet skal naturligvis indlæse de to heltal. Organiser programmet således at det gentager "største fælles divisor testen" indtil et af de indlæste tal er negativ. Denne organisering er bekvemt, fordi vi på denne måde ikke skal genstarte programmet for at afprøve flere par af inputværdier.

Overvej nøje, hvilke iterative kontrolstrukturer du vil anvende i dette program.


Løsning