Salutare!Ma puteti ajuta la aceasta problema?Vreau sa specifil ca doresc rezolvarea problemei doar folosind if si while !
Dându-se un număr natural a, să se verifice dacă a și inversul (oglinditul) lui a sunt ambele numere prime.
Date de intrare
Se citește de la tastatură numărul natural a.
Date de ieșire
Să se afișeze DA dacă numărul a și inversul său sunt ambele prime sau NU, în caz contrar.
Eu am rezolvat asa dar nu inteleg ce am gresit!
#include
using namespace std;
int main() {
int a, nr_invers = 0, ramas;
cin >> a;
int Ca = a;
while (a != 0) {
ramas = a % 10;
nr_invers = nr_invers * 10 + ramas;
a /= 10;
}
int i = 2, este_prim = 1, este_prim2 = 1;
while (i < a) {
if (a % i == 0) {
este_prim = 0;
}
++i;
}
while (i < nr_invers) {
if (nr_invers % i == 0) {
este_prim2 = 0;
}
++i;
}
if (Ca == 1) {
este_prim = 0;
}
if (nr_invers == 1) {
este_prim2 = 0;
}
Nu am avut rabdare sa analizez programul cap-coada, dar l-am compilat si executat.Din cate vad, functioneaza perfect, singura chestie care lipseste este libraria iostream.Da-mi niste date de intrare care nu functioneaza cum trebuie.
Vă mulțumim că ați vizitat site-ul nostru web care acoperă despre Informatică. Sperăm că informațiile furnizate v-au fost utile. Nu ezitați să ne contactați dacă aveți întrebări sau aveți nevoie de asistență suplimentară. Ne vedem data viitoare și nu ratați să marcați.