Răspuns :
Următorul algoritm calculează cel mai mare divizor comun şi cel mai mic
multiplu comun a două numere naturale, nenule, a şi b, citite de la
tastatură. Algoritmul are două variante: prin împărţiri repetate şi prin
scăderi repetate.
Varianta 1. Se foloseşte algoritmul lui Euclid, care atribuie lui b restul
împărţirii lui a la b, iar lui a vechea valoare a lui b. Algoritmul se
termină când b=0.
Paşii algoritmului sunt:
1. Se împarte a la b şi se obţine restul r;
2. Se execută operaţiile de atribuire a<-b şi b<-r;
3. Dacă b este diferit de 0 atunci se revine la pasul 1, altfel c.m.m.d.c.
este a.
#include
using namespace std;
void main()
{
int a, b, r, x, y;
cout << "Programul calculeaza c.m.m.d.c. si c.m.m.m.c a doua numere
date" << endl;
cout << "Introduceti primul numar : ";
cin >> a; x=a;
cout << "Introduceti al doilea numar : ";
cin >> b; y=b;
while(b!=0) {
r=a%b; // calculeaza restul impartirii lui a la b
a=b;
b=r;
}
cout << "c.m.m.d.c al numerelor "<< x << " si " << y << " este : " << a
<< endl;
cout << "c.m.m.m.c al numerelor "<< x << " si " << y << " este : " <<
x*y/a << endl;
Vă mulțumim pentru vizita pe platforma noastră dedicată Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, nu ezitați să ne contactați. Așteptăm cu entuziasm să reveniți și vă invităm să ne adăugați la lista de favorite!