Răspuns :
Eu personal asa am facut, si cred ca e corect:

In al doilea while, i-ul incepe de la 2 (e bun). Problema este ca, atunci cand va ajunge la urmatorul while, i-ul e modificat din cauza primului while. Pe langa asta, i-ul trebuie sa mearga pana la a/2. Tu ai pus pana la <a..nu-i bun. Apropo, care a? L-ai impartit in primul while si acum e 0. Mai departe. Nu inteleg ce ai incercat la primele doua if-uri. if (Ca==1) este_prim=0. Pai, tu ai dat variabilei Ca valoarea lui a (dupa ce a fost citit). Sa spunem, a=13, Ca=a; deci, Ca va fi 13, in niciun caz 1.
Recomand sa mergi cu for. Am facut problema, o ai mai jos. Prima data am citit n-ul. Am verificat cu for daca e prim, iar daca este, face inversul. Dupa invers, verifica daca si el este prim. Si in final, daca si inversul este prim, afiseaza "da", altfel "nu".
Poti sa scrii rezolvarea in c++ si sa intelegi mersul. Bafta! :D

Vă mulțumim că ați vizitat platforma noastră dedicată Informatică. Ne bucurăm dacă informațiile v-au fost de ajutor. Dacă aveți întrebări suplimentare sau aveți nevoie de asistență, nu ezitați să ne contactați. Revenirea dumneavoastră ne-ar onora, așa că nu uitați să ne adăugați la favorite!