Massimo Comun Divisore (MCD) per differenze
Mer Ott 16, 2019 3:01 pm
Traccia:
Il massimo comun divisore tra due numeri può essere calcolato in modo ricorsivo in base alle seguenti proprietà:
Se A=B, allora MCD(A,B)=A
Se A>B, allora MCD(A,B)=MCD(B,A-B)
Se A<B, allora MCD(A,B)=MCD(A,B-A)
In altre parole, se i due numeri sono uguali allora l'MCD è pari ad uno qualsiasi dei due numeri (sono uguali!). Se invece i due numeri sono diversi, l'MCD tra i due numeri è uguale all'MCD tra: "il più piccolo dei due" e "la differenza tra il più grande e il più piccolo".
Esempio 1: MCD(100,60) = MCD(60,40) = MCD(40,20) = MCD(20,20) = 20 .
Esempio 2: MCD(15,6) = MCD(6,9) = MCD(6,3) = MCD(3,3) = 3.
Esempio 3: MCD(21,10) = MCD(10,11) = MCD(10,1) = MCD(1,9) = MCD(1, = MCD(1,7) = MCD(1,6) = MCD(1,5) = MCD(1,4) = MCD(1,3) = MCD(1,2) = MCD(1,1) = 1.
Scrivi una funzione ricorsiva MCD che restituisce il massimo comun divisore fra due numeri naturali passati come parametri.
Suggerimento:
//VOID
Programma scaricabile:
Non disponibile
Il massimo comun divisore tra due numeri può essere calcolato in modo ricorsivo in base alle seguenti proprietà:
Se A=B, allora MCD(A,B)=A
Se A>B, allora MCD(A,B)=MCD(B,A-B)
Se A<B, allora MCD(A,B)=MCD(A,B-A)
In altre parole, se i due numeri sono uguali allora l'MCD è pari ad uno qualsiasi dei due numeri (sono uguali!). Se invece i due numeri sono diversi, l'MCD tra i due numeri è uguale all'MCD tra: "il più piccolo dei due" e "la differenza tra il più grande e il più piccolo".
Esempio 1: MCD(100,60) = MCD(60,40) = MCD(40,20) = MCD(20,20) = 20 .
Esempio 2: MCD(15,6) = MCD(6,9) = MCD(6,3) = MCD(3,3) = 3.
Esempio 3: MCD(21,10) = MCD(10,11) = MCD(10,1) = MCD(1,9) = MCD(1, = MCD(1,7) = MCD(1,6) = MCD(1,5) = MCD(1,4) = MCD(1,3) = MCD(1,2) = MCD(1,1) = 1.
Scrivi una funzione ricorsiva MCD che restituisce il massimo comun divisore fra due numeri naturali passati come parametri.
Suggerimento:
//VOID
Programma scaricabile:
Non disponibile
Permessi in questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum.