|
subprogram cmmdc
Sa se scrie cate o functie care sa determine:
- cel mai mare divizor comun a doua numere intregi date ca parametri.
- cel mai mic multiplu comun a doua numere intregi date ca parametri
Indicatii:
- Pentru determinarea cmmdc se va folosi algoritmul lui Euclid prin impartiri
repetate.
- Pentru determinarea cmmmc se va folosi relatia dintre cmmmc si cmmdc: cmmmc(a,b)=(a*b)/cmmdc(a,b)
#include <iostream.h>
int cmmdc(int a, int b)
{
int r;
r=a%b;
while(r!=0)
{
a=b;
b=r;
r=a%b;
}
return b;
}
int cmmmc(int a, int b)
{
return(a*b/cmmdc(a,b));
}
void main(void)
{
int x,y,d,m;
cout<<"Dati primul numar ";cin>>x;
cout<<"Dati al doilea numar ";cin>>y;
d=cmmdc(x,y);
cout<<"C.m.m.d.c este "<<d<<endl;
m=cmmmc(x,y);
cout<<"C.m.m.m.c este "<<m<<endl;
}