C++ :se considera subprogramul divizor cu doi parametri:
- n,prin care primeste un nr natural cu cel mult noua cifre(n>1);
- d,prin care furnizeaza cel mai mare divizor prim al lui n.
Exemplu: pentru n=50, dupa apel =>> d=5
iar pentru n=11 , dupa apel =>> d=11

1

Răspunsuri

  • Utilizator Brainly
2014-02-06T03:05:53+02:00
În sfârșit și ceva de informatică...
int subdivizor(int); //prototip
int subdivizor(int n)
{
    int d=2;
    while(n>1) if(n%d==0) n=n/d; else d=d+1;
    return d;
}
Am căutat divizorii primi eliminându-i pe rând din număr. Pe măsură ce am eliminat, am eliminat și factorii compuși mai mari, așa că ultimul număr la care am împărțit este divizorul nostru. Cât timp mai avem factori în n, dacă factorul nostru se găsește în număr, îl scoatem, dacă nu, încercăm cu următorul. Nu va mai încerca cu următorul dacă numărul devine 1 în proces (ultimul factor prim a fost scos)