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

sa se afiseze toate numerele prime de 4 cifre care au inversul tot un nr prim
un algoritm pt clasa 9, nu ceva complicat

Răspunsuri la întrebare

Răspuns de Mghetes
2

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;

}

Alte întrebări interesante