L'algoritmo di Euclide

Documenti analoghi
Metodo di Euclide delle sottrazioni successive per il calcolo del M.C.D.

PREPARAZIONE ALLE GARE DI MATEMATICA - CORSO BASE

Due numeri naturali non nulli a, b tali che MCD(a,b) = 1 si dicono coprimi o relativamente primi.

Lezione 4. Problemi trattabili e soluzioni sempre più efficienti. Gianluca Rossi

Massimo comun divisore

= < < < < < Matematica 1

PROGRAMMA DI MATEMATICA CONTENUTI.

Matematica con Python

Gli insiemi e le relazioni. Elementi di logica

Sommario. 1. Che cos è la matematica? Numeri naturali e sistemi di numerazione 23

Congruenze. Alberto Abbondandolo Forte dei Marmi, 17 Novembre 2006

MATEMATICA DI BASE 1

LICEO CLASSICO-SCIENTIFICO EUCLIDE CAGLIARI PROGRAMMA DIDATTICO

Zeri di funzioni e teorema di Sturm

Parte III. Incontro del 26 gennaio 2012

PROGRAMMAZIONE: Le strutture di controllo

Programma di Matematica Classe 2^ E/L.L. Anno scolastico 2015/2016

Lezione 3 - Teoria dei Numeri

II Esonero di Matematica Discreta - a.a. 06/07. Versione B

MASTER Comunicazione della Scienza

La divisibilità. La divisibilità - Divisibility. Multipli e Divisori Multiples and Factors

Matematica per esami d idoneità o integrativi della classe 1 ITI

IL TEOREMA FONDAMENTALE DELL ARITMETICA: DIMOSTRAZIONE VELOCE.

algebra: insiemi numerici N e Q +, proprietà operazioni e calcolo linguaggio degli insiemi

Classi: Prime IA; IB; IC; ID; IE; IF Disciplina: MATEMATICA Ore settimanali previste: 4

Esercizi sugli Algoritmi numerici

Programma svolto di Matematica

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)

1 Multipli di un numero

CALCOLO DEL MASSIMO COMUN DIVISORE

Piccolo teorema di Fermat

COMPETENZE al termine della scuola secondaria di 1 grado (dalle Indicazioni Nazionali)

ISTITUTO ISTRUZIONE SUPERIORE

Aritmetica modulare, numeri primi e crittografia

A lezione sono stati presentati i seguenti passi per risolvere un problema:

CURRICOLO VERTICALE D' ISTITUTO di MATEMATICA

CURRICOLO VERTICALE PER COMPETENZE DISCIPLINARI. Scuola Secondaria di Primo Grado Matematica -

Liceo scientifico Leonardo da Vinci PROGRAMMA DI MATEMATICA ANNO SCOLASTICO 2013/2014 II A LE EQUAZIONI LINEARI

PIANO DI LAVORO DEL DOCENTE prof. DIMONOPOLI A.S. 2015/2016 CLASSE 1ALL MATERIA: MATEMATICA

SCUOLA PRIMARIA MATEMATICA (Classe 1ª)

PROGRAMMAZIONE DISCIPLINARE

Programma di Matematica. Classe 1 B odont / d anno scolastico 2009/10 Insegnante: Maria Teresa DI PRIZIO IL CALCOLO NUMERICO IL CALCOLO LETTERALE

ALGORITMI 1. GLI ALGORITMI 2. IL LINGUAGGIO DI PROGETTO

ISTITUTO D ISTRUZIONE SUPERIORE POLO - LICEO ARTISTICO - VENEZIA PROGRAMMA SVOLTO

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee

Richiami di aritmetica (1)

INFORMATICA DI BASE Linguaggio C Prof. Andrea Borghesan

TEORIA DEI NUMERI. 1. Numeri naturali, interi relativi e principi d induzione

TRAGUARDI PER LO SVILUPPO DELLE COMPETENZE

CURRICOLO DELLA SCUOLA SECONDARIA DI PRIMO GRADO DISCIPLINA: MATEMATICA CLASSE 1^

Programma di matematica classe I sez. E a.s

Rappresentazione generale del problema e fasi di progettazione

Esercizi di Algebra II

Algoritmo. Funzioni calcolabili. Unità 28

NUMERI PRIMI E TEORMA FONDAMENTALE DELL ARITMETICA Definizione 1. Sia p Z, p ±1. Si dice che p è primo se

2 Algoritmo euclideo di divisione

IL CURRICOLO VERTICALE DI MATEMATICA

DIPARTIMENTO DI MATEMATICA A.S EQUAZIONI DI GRADO SUPERIORE AL 2

LICEO SCIENTIFICO - OPZIONE DELLE SCIENZE APPLICATE MATEMATICA

Giovanna Carnovale. October 18, Divisibilità e massimo comun divisore

Anelli a fattorizzazione unica. Domini ad ideali principali. Anelli Euclidei

DECLINAZIONE COMPETENZE SCUOLA SECONDARIA DI PRIMO GRADO: MATEMATICA COMPETENZE CONOSCENZE ABILITA

Matematica Discreta e Algebra Lineare (per Informatica)

Lezione 6. Divisibilità e divisori. Teorema di divisione euclidea. Algoritmo delle divisioni successive.

1.1 Concetti base dell Informatica: Algoritmi

SCUOLA DELL INFANZIA. Scuola dell infanzia: 5 ANNI

Programma di Matematica A.S. 2013/14. Classe 1 B odont Insegnante : M.Teresa Di Prizio INSIEMI

Liceo Artistico Statale A. Caravillani Dipartimento di Matematica. Docente Patrizia Domenicone. Programmazione classi prime Sezione A

Monomi e Polinomi. Monomio Si dice monomio un espressione letterale in cui figurano solo operazioni di moltiplicazione.

Congruenze. Trovare la cifra dell unità dei seguenti numeri [3] [6] [5]

( ) ( ) 2 + 3( a + b) = ( ) + b( x 1) = ( ) ( ) b( x + y) = ( ) x 2 ( a + b) y 2 + ( a + b) = ( ) + ( a b) = ( ) a( 4x + 7) = ( ) + 3a( 2 5y) =

IIIIS VIIA SIILVESTRII 301 Pllesso «ALESSANDRO VOLTA» Programma di MATEMATICA Classe 1aL Indirizzo LICEO DELLE SCIENZE APPLICATE Anno

A.A CORSO DI ALGEBRA 1. PROFF. P. PIAZZA, E. SPINELLI. SOLUZIONE ESERCIZI FOGLIO 5.

PROGRAMMA A.S. 2014/2015

ISTITUTO DI ISTRUZIONE SUPERIORE LICEO SCIENTIFICO TITO LUCREZIO CARO -CITTADELLA PROGRAMMA DI MATEMATICA ANNO SCOLASTICO 2009/2010 CLASSE 1 D

MATEMATICA E COMPETENZE DI BASE IN SCIENZA E TECNOLOGIA MATEMATICA CONCORRENTI DISCIPLINA DI RIFERIMENTO: MATEMATICA COMPETENZA DISCIPLINE tutte

MATEMATICA classe PRIMA

I.S.I.S. F. De Sanctis Sez. ass. Liceo Classico

LICEO SCIENTIFICO STATALE A. VOLTA PROGRAMMA DI MATEMATICA CLASSE 1 SEZ.B A.S

PIANO DI LAVORO DEL DOCENTE prof. DIMONOPOLI A.S. 2013/2014 CLASSE 1ALS MATERIA: MATEMATICA

Primo modulo: Aritmetica

- Conoscere il concetto di insieme. - Sapere rappresentare un insieme. - Riconoscere insiemi uguali, inclusi, vuoti.

ISTITUTO COMPRENSIVO STATALE «DON BOSCO» Scuola Secondaria di 1 grado «E. Fermi» Manduria (TA)

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.

LICEO SCIENTIFICO STATALE L. da VINCI Reggio Calabria. PROGRAMMA DI MATEMATICA svolto nella classe 1^ E Anno Scolastico 2013/2014

Transcript:

L'algoritmo di Euclide The Euclidean algorithm for finding the greatest common divisor of two integers La divisione di un numero intero a per un altro intero b può essere prolungata finché il resto è più piccolo del divisore. Così se a = 648 e b = 7, si ha un quoziente q = 97 ed un resto r = 4. 648 : 7 = 92 648 = 7 92 + 4 18 4 TEOREMA di zero, si può sempre trovare un numero q tale che Se a è un numero intero e b un altro numero intero maggiore a = b q + r con r compreso tra b e zero (0 r b) Da questo si può dedurre un metodo per la ricerca del MCD di due numeri interi (particolarmente utile per numeri grandi). L'algoritmo (un algoritmo è un metodo sistematico di calcolo) si basa sul fatto che ad ogni relazione della forma: segue che: a = b x q + r MCD(a; b) = MCD(b; r) Ripetendo nello stesso modo accade che il MCD è l'ultimo resto positivo della successione. a = b q 1 + r 1 b = r 1 q 2 + r 2 r 1 = r 2 q 3 + r 3 r 2 = r 3 q 4 + r 4... r n-3 = r n-2 q n-1 + r n-1 -> MCD r n-2 = r n-1 q n + 0 L algoritmo di Euclide è applicato alla risoluzione delle equazioni diofantee nella forma ax+by=c. Il teorema di Lamé (1845 G. Lamé) stabilisce il numero di passi richiesti per trovare il MCD(a;b) con il metodo di Euclide. Per 1, siano dati due numeri interi e, con > >0 tali che l applicazione dell algoritmo di Euclide applicato a e richiede esattamente divisioni e tali che sia piccolo tanto da soddisfare queste condizioni. Allora = e =, dove è un numero di Fibonacci. Il numero di passaggi dell algoritmo di Euclide non supera di 5 volte il numero delle cifre del numero con meno cifre. Il valore 5 può, inoltre, essere ulteriormente ridotto a n10/ln 4,785, dove è il rapporto aureo.

Nota storica Euclide, matematico greco nato ad Alessandria d'egitto e fiorito intorno al 300 a.c., è famoso per la sua opera "Elementi" (in greco Stoichêia) dove tratta tra l'altro questo procedimento in modo geometrico. Ricordiamo, legati al suo nome, il termine geometria euclidea o elementare (comprendente la geometria piana e la geometria solida e contrapposta a quelle non euclidee), il postulato di Euclide (libro I, aitémata quinto) ed i due importanti teoremi di Euclide (libro I, assieme al teorema di Pitagora). L algoritmo di Euclide viene proposto come soluzione alla Proposizione VII.2 degli Elementi Euclid's algorithm appears as the solution to the Proposition VII.2 in the Element's http://aleph0.clarku.edu/~djoyce/java/elements/toc.html Gabrile Lamé (22.7.1795 1.5.1870) matematico francese. Un primo algoritmo Euclideo (diagramma a blocchi) Rappresentazione dell algoritmo (pseudocodice) Prendi i valori da tastiera a e b Ripeti finché a<>b Se a > b Sostituisci ad a il valore (a- b) Altrimenti Sostituisci ad b il valore (b-a) Fine se Fine Ripeti Mostra il MCD che è pari ad a (a=b)!

Un secondo algoritmo Euclideo (diagramma a blocchi) Rappresentazione dell algoritmo pseudocodice Prendi i valori da tastiera a e b Se a < b allora scambiali Metti in resto il resto tra a e b Ripeti finché resto<>0 Metti in a il contenuto di b Metti in b il contenuto di resto Metti in RESTO il resto tra a e b Fine Ripeti C++ int gcd(int a, int b) { if (b == 0) return a; else return gcd(b, a % b); } Mostra il MCD che è pari a b

Esempi risolti MCD (24; 14) = 2 24 = 2 3 x 3 14 = 2 x 7 MCD (24; 14) = 2 = 2 m.c.m. (24; 13) = 2 3 x 3 x 7 24 14 = 10 14 10 = 4 10 4 = 6 6 4 = 2 4-2 = 2 2-2 = 0 quindi MCD(24; 14) = 2 24 : 14 = 1 resto 10 14 : 10 = 1 resto 4 10 : 4 = 2 resto 2 4 : 2 = 2 resto 0 quindi MCD(24; 14) = 2 MCD (1804; 328) = 164 MCD (1804; 328) = 2 2 x 41 = 164 1804 = 2 2 x 11 x 41 328 = 2 3 x 41 m.c.m. (1804; 328) = 2 3 x 11 x 41 1804 328 = 1476 1476 328 = 1148 1148 328 = 820 820 328 = 492 492 328 = 164 328 164 = 164 164 = 164 quindi MCD (1804; 328) = 164 1804 : 328 = 5 resto 164 328 : 164 = 2 resto 0 Quindi MCD (1804; 328) = 164 MCD (61; 24) = 1 MCD(61; 24) = 1 (primi tra loro) 61 = 61 (numero primo!) 24 = 2 3 x 3 m.c.m.(61; 24) = 2 3 x 3 x 61 61 24 = 37 37 24 = 13 24 13 = 11 13 11 = 2 11 2 = 9 9 2 = 7 7 2 = 5 5 2 = 3 3 2 = 1 1 1 = 0 quindi MCD (61; 24) = 1 61 = 24 x 2 + 13 24 = 13 x 1 + 11 13 = 11 x 1 + 2 11 = 2 x 5 + 1 2 = 1 x 2 + 0 61 : 24 = 2 resto 13 24 : 13 = 1 resto 11 13 : 11 = 1 resto 2 11 : 2 = 5 resto 1 2: 1 = 2 resto 0

MCD (84; 36) = 2 2 x 3 = 12 840 = 2 2 x 3 x 7 36 = 2 2 x 3 2 MCD (84; 36) = 2 2 x 3 = 12 m.c.m.(84; 36) = 2 2 x 3 2 x 7 84 36 = 48 48-36 = 12 36-12 = 24 24 12 = 12 12 12 = 0 quindi MCD (84; 36) = 12 84 = 36 x 2 + 12 36 = 12 x 3 + 0 MCD (840; 611) = 1 MCD (840; 611) = 1 (primi tra loro) 840 = 2 3 x 3 x 5 x 7 611 = 13 x 47 m.c.m.(840; 611) = 2 3 x 3 x 5 x 7 x 13 x 47 841 611 = 229 611-229 = 382 382-229 = 153 229 153 = 76 153-76 = 77 77-76 = 1 76 1 = 75 3 1 = 2 1 1 = 0 quindi MCD (840; 611) = 1 840 = 611 x 1 + 229 611 = 229 x 2 + 153 229 = 153 x 1 + 76 153 = 76 x 2 + 1 76 = 1 x 76 + 0 MCD (648; 7) = 1 MCD (648; 7) = 1 (primi tra loro) 648 = 2 3 x 3 4 7 = 7 (numero primo!) m.c.m.(648; 7) = 2 3 x 3 4 x 7 841 7 = 834 834 7 = 827 22 7 = 15 15 7 = 8 8 7 = 1 7 1 = 6 6 1 = 5 5 1 = 4 4 1 = 3 3 1 = 2 1 1 = 0 quindi MCD (648; 7) = 1 648 = 7 x 92 + 4 7 = 4 x 1 + 3 4 = 3 x 1 + 1 3 = 1 x 5 + 0