Cerinţa
Scrieţi definiția completă a unui subprogram C++ i_prim
care primește prin singurul său parametru, n
, un număr natural cu cel mult 9
cifre și returnează diferența minimă p2-p1
în care p1
şi p2
sunt numere prime și p1≤n≤p2
.
Restricţii şi precizări
- numele subprogramului va fi
i_prim
n>2
Exemplu
Dacă n=28
, i_prim(n)=6
, deoarece p1=23
și p2=29
.
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.
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema i_prim :
int prim(int n){
if(n<2)
return 0;
if(n%2==0 && n>2)
return 0;
for(int d=3;d*d<=n; d+=2)
if(n%d == 0)
return 0;
return 1;
}
int i_prim(int n){
int x,y;
x=y = n;
while(!prim(y))
--y;
while(!prim(x))
++x;
return x-y;
}
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa .
Rezolvarea problemei #36 i_prim
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #36 i_prim de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!