Subprogramul factori are doi parametri, n și m, prin care primește câte un număr natural din intervalul
[1,109]. Subprogramul returnează numărul valorilor prime care apar la aceeași putere atât în
descompunerea în factori primi a lui n, cât și în descompunerea în factori primi a lui m.
Scrieți definiția completă a subprogramului.
Exemplu: dacă n=16500 și m=10780, atunci subprogramul returnează 2 (16500=2235311,
10780=2257211).
lory2408:
d=2;
while(n>1 && m>1)
{
p1=0;
while(n%d==0)
{
p1++:
n=n/d;
}
p2=0;
while(m%d==0)
{
p2++;
m=m/d;
}
if(p1==p2)
d++;
nr++;
}
Răspunsuri la întrebare
Răspuns de
15
COROANA TE ROG!!!
int factori(int n, int m){
int div, p1=0, p2=0, x=2, k=0;
if(n==1||m==1)
return 0;
while(n>1&&m>1){
div=0;
for(int i=1;i<=x;i++)
if(x%i==0)
div++;
if(div==2){
while(n%x==0)
n/=x,p1++;
while(m%x==0)
m/=x,p2++;
if(p1==p2&&p1!=0&&p2!=0)
k++;
}
p1=0,p2=0,x++;
}
return k;
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Istorie,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Engleza,
8 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă