Informatică, întrebare adresată de ionatanferariu, 8 ani în urmă

Am nevoie de niște explicații. Cum afișăm cel mai mare număr prim mai mic decât n, considerând că n se citește de la tastatură. ​

Răspunsuri la întrebare

Răspuns de simulink
1

Răspuns: Verifici pe rand daca n-1, n-2,... sunt nr prime. La primul numar gasit, te opresti si il afisezi.

int gasit=0,i,j;

for( i=n-1; i>=2;i--)

{ int ok=1;

for(j=2; j*j<=i;j++)

if (i%j==0) {ok=0; break;}

if(ok) {gasit=1; break;}

}

if (gasit==1) cout<<i;

else cout<<"Nu exista numere prime mai mici decat "<<n;

Explicație:


ionatanferariu: Mi se pare mai greu cu funcții
ionatanferariu: Dar mulțumesc oricum!
simulink: pai atunci in loc de prim(i) scrie intre acolade codul care verifica daca nr i este prim sau nu
simulink: am modificat sa fie fara functie
ionatanferariu: Mulțumesc frumos!
iliketocode: modulo 2 nu este suficient pentru a genera numerele prime
iliketocode: eh, ca am sarit peste bucla aia; incearca sa indentezi codul mai frumos
ionatanferariu: Nu merge
ionatanferariu: Nu-mi dă rezultatul corect!
ionatanferariu: De ce nu scrii codul complet și de ce nu-l indentezi cum trebuie?
Alte întrebări interesante