Divizorii unui numar

Pentru a determina divizorii unui număr nnn, putem observa că divizorii apar întotdeauna în perechi. Dacă un număr d este divizor al lui n, atunci și n/d va fi divizor al lui n. Această proprietate ne permite să parcurgem numerele doar până la rădăcina pătrată a lui n pentru a identifica toți divizorii.

Exemplu pentru n=60:

  • 1 este divizor al lui 60, deci și 60/1=60  este divizor.
    2 este divizor al lui 60, deci și 60/2=30 =  este divizor.
    3 este divizor al lui 60, deci și 60/3=20 = 20 este divizor.
    4 este divizor al lui 60, deci și 60/4=15 este divizor.
    5 este divizor al lui 60, deci și 60/5=12 este divizor.
    6 este divizor al lui 60, deci și 60/6=10 este divizor.
    7 nu este divizor al lui 60.
    8 nu este divizor al lui 60.

  • 7×7=49 și 8×8=64, deci 8 este mai mare decât rădăcina pătrată a lui 60. Nu mai este nevoie să căutăm alți divizori.
    Divizori lui 60 sunt: 1,60,2,30,3,20,4,15,5,12,6,10. Astfel, este suficient să parcurgem numerele de la 1 până la √ n pentru a determina toți divizorii unui număr. 

Afisarea Divizorilor

 Identificã si afiseazã toate numerele care împart exact un numãr dat. De exemplu, pentru 12, divizorii sunt 1, 2, 3, 4, 6, 12.

for(int d =1 ; d * d <= n ; d ++ )
 if(n % d == 0)
 {
 cout << d << " ";
 if(d * d < n) // dacă d != sqrt(n)
 cout << n / d << " ";
 } 

Câti Divizori Are un Numãr

Numãrã câte numere sunt divizori ai unui numãr dat. De exemplu, 12 are 6 divizori (1, 2, 3, 4, 6, 12).
for(int d =1 ; d * d <= n ; d ++ )
if(n % d == 0)
{
nr++
if(d * d < n) // dacă d != sqrt(n)
nr++;
}  
cout<<nr;

Verificarea Numãrului Prim

Verificã dacã un numãr are exact doi divizori (1 si el însusi). De exemplu, 7 este prim deoarece are doar divizorii 1 si 7.
for(int d =1 ; d * d <= n ; d ++ )
if(n % d == 0)
{
nr++
if(d * d < n) // dacă d != sqrt(n)
nr++;
}
if(nr==2)//Verificã dacã un numãr are exact doi divizori
cout<"nr este prim"
Creați un site gratuit! Acest site a fost realizat cu Webnode. Creați-vă propriul site gratuit chiar azi! Începeți