Răspuns :
Raspuns:
#include <iostream>
#include <cmath>
using namespace std;
bool numarPrim(int numar) // Functia returneaza doar true sau false - pentru ca nu avem nevoie de alte valori
{
if(numar < 2) // Daca numarul este mai mic ca si 2 (1, 0, -1, -2, etc) - acesta nu este prim
return false;
for(int i = 2; i <= numar / 2; i++) // Parcurgem toate numerele de la 2 la numar / 2
if(numar % i == 0) // Daca acesta se imparte exact la acel numar, inseamna ca nu este prim
return false;
return true;
}
int main() {
int i, inv, copie;
for(int i = 1000; i<= 9999; i++)
{
copie = i;
inv = 0;
if(numarPrim(i)) // daca i este prim
{
//calculam inversul
while(copie > 0)
{
inv = inv * 10 + copie %10;
copie /= 10;
}
if(numarPrim(inv)) // daca inversul este prim
{
cout<<i<<" ";
}
}
}
return 0;
}
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile furnizate v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de ajutor, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite!