Informatică, întrebare adresată de gabi7, 9 ani în urmă

C++
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.

Răspunsuri la întrebare

Răspuns de stassahul
3
int prime(int a)
{
   int i;
   if(a==2)
      return 1;
   if(a==0 or a==1 or a%2==0)
      return 0;
   for(i=3;i*i<=a and a%i;i+=2)
      ;
   return i*i>a;
}
int nr_prim(int n)
{
    n++;
    while(!prime(n))
        n++;
    return n;
}

gabi7: Multumesc mult !
Alte întrebări interesante