Risolviamo 3 esercizi:
- Scrivere un programma in Python che utilizzi l’algoritmo di Euclide per trovare il MCD massimo comune divisore tra due numeri.
- Usando l’istruzione circle(raggio, angolo al centro, lati) disegnare 100 poligoni inscritti in un cerchio di raggio 100 pixel
- Usando l’istruzione circle(raggio, angolo al centro, lati) disegnare 10 triangoli inscritti in cerchi di raggio crescente (r=10, r=20… r=100)
Esercizio 1: Scrivere un programma in Python che utilizzi l’algoritmo di Euclide per trovare il MCD massimo comune divisore tra due numeri.
L’algoritmo di Euclide trova il MCD con questa procedura: si dividono tra loro i due numeri e si calcola il resto (per esempio se N1=88 e N2=36 si ha che 88/36 da come resto R=16). Poi si ripete la procedura dividendo il secondo numero N2 per il resto appena calcolato. Si continua a ripetere finché non risulta R=0 a quel punto N1 è il MCD
Im altra parole la procedura è questa:
| N1 | N2 |
| 88 | 36 |
| 36 | 16 |
| 16 | 4 |
| 4 | 0 |
| 0 |
Il programma che risolve il problema lo posso fare così:
| n1=int(input(“N1=”)) n2=int(input(“N2=”)) resto=n2 while (resto!=0): |
|||
| quoziente=n1/n2 resto=n1%n2 n1=n2 n2=resto print(f”{n1} \t {resto}”) |
|||
| print(f”\n Il MCD è {n1}”) | |||

Esercizio 2: Usando l’istruzione circle(raggio, angolo al centro, lati) disegnare 100 poligoni inscritti in un cerchio di raggio 100 pixel
Per disegnare 100 poligoni dobbiamo variare il parametro “lati” in quanto se lati=3 si ha il triangolo, se lati=4 si ha il quadrato, poi il pentagono e così via. Si può utilizzare un ciclo while che mentre lati<=100 disegna il poligono con circle e poi incrementa il valore di lati per il prossimo poligono.


Esercizio 3: Usando l’istruzione circle(raggio, angolo al centro, lati) disegnare 10 triangoli inscritti in cerchi di raggio crescente (r=10, r=20… r=100)

