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

Sa se afiseze numerele prime de trei cifre care citite invers sunt tot numere prime.
Va roog ajutor,apropo,sunt clasa a 9-a,nu am facut inca cu numar(i),ceva de genu,vreau sa ma ajutati,eu am facut codul sursa dar gresesc ceva mereu la el!!!
Va rog ajutor! Doresc rezolvarea in C++ nu exemple de numere

Răspunsuri la întrebare

Răspuns de DenM
5
Ai nevoie de doi algoritmi elementari: oglinditul unui numar si testul de prim. Iti scriu main-ul, sper sa nu fie o problema;
int main(){int i,p,x,ok1,ok2,d;
for(i=101;i<=997;i++)//nu iau in calcul 100, 998, 999 fiindca nu sunt numere prime
{//test prim pentru i
ok1=1;
for(d=2;d*d<=i;d++) if(i%d) ok1=0;
if(ok1)//daca i este prim, incep sa calculez oglinditul
{
//algoritm realizare oglindit, incep prin a face o copie lui i;
x=i;p=0;
while(x){p=p*10+x%10;x/=10;}
ok2=1;
for(d=2;d*d<=p;d++) if(p%d) ok2=0;
if(ok2) cout<<i<<'  ';
}}
return 0;}
Un alt algoritm mult mai eficient este folosirea Ciurului lui Euclid, dar nu stiu daca ati vorbit de el. Oricum, implementarea si explicatia lui se gasesc pe net.


Alte întrebări interesante