511
Cerința
Scrieți definiția completă a unui subprogram C++ nr_prim care primește prin singurul său parametru, n, un număr natural cu cel mult 9 cifre și returnează cel mai mic număr prim, strict mai mare decât n.
Restricții și precizări
- numele subprogramului va fi
nr_prim
Exemplu
Dacă n=28, nr_prim(n)=29. Dacă n=17, nr_prim(n)=19.
Important
Soluția propusă va conține doar definiția funcției cerute. Prezența în soluție a altor instrucțiuni poate duce erori de compilare sau de execuție care vor avea ca efect depunctarea soluției.
int nr_prim(int n)
{
n++;
while(1)
{
int cnt=0;
for(int i = 1 ; i*i<= n ; ++i)
{
if(cnt>2)
break;
if(n%i==0)
cnt+=2;
if(i*i==n)
cnt--;
}
if(cnt==2)
{
return n;
break;
}
else
n++;
}
}
Comentarii