Sa se afiseze divizorii primi ai numarului intreg n .
Răspunsuri la întrebare
Răspuns de
1
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;
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă