100% au considerat acest document util (1 vot)
2K vizualizări2 pagini

Sub III.1.cpp

Documentul descrie un subprogram care primește doi parametri reprezentând numere naturale și returnează numărul valorilor prime comune descompunerii în factori primi a celor doi parametri.
Drepturi de autor
© © All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca RTF, PDF, TXT sau citiți online pe Scribd
100% au considerat acest document util (1 vot)
2K vizualizări2 pagini

Sub III.1.cpp

Documentul descrie un subprogram care primește doi parametri reprezentând numere naturale și returnează numărul valorilor prime comune descompunerii în factori primi a celor doi parametri.
Drepturi de autor
© © All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca RTF, PDF, TXT sau citiți online pe Scribd
Sunteți pe pagina 1/ 2

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 se regăsesc 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=750 şi m=490, atunci subprogramul returnează 2 (750=2353, 490=2572).

Răspuns:

int factori (int n, int m)


{
int nr_prime = 0;
for (int i=2;i<=n && i<=m;i++)
if (n%i==0 && m%i==0)
{
int prim=1;
for (int j=2;j*j<=i;j++)
if (i%j==0)
{
prim = 0;
break;
}
if (prim == 1) nr_prime++;
}
return (nr_prime);
}

Programul care testează funcționarea corectă:

#include <iostream>

using namespace std;

int factori (int n, int m)


{
int nr_prime = 0;
for (int i=2;i<=n && i<=m;i++)
if (n%i==0 && m%i==0)
{
int prim=1;
for (int j=2;j*j<=i;j++)
if (i%j==0)
{
prim = 0;
break;
}
if (prim == 1) nr_prime++;
}
return (nr_prime);
}
int main ()
{
int x, y;
cout << "n = ";
cin >> x;
cout << "m = ";
cin >> y;
cout << "Nr factori primi comuni = " << factori (x, y);
return 0;
}

S-ar putea să vă placă și