Liczby lustrzane pierwsze to para liczb pierwszych, które mają odwróconą kolejność cyfr. Przykładami takich liczb są 17 i 71, 37 i 73, 79 i 97. Napisz program sprawdzający, czy liczby m i n wczytane z klawiatury są lustrzanymi liczbami pierwszymi.

Wejście
n i n - Liczby naturalne całkowite w pierwszej linii oddzielone spacją

Wyjście
W drugiej linii słowo TAK jeżeli liczby są lustrzanymi liczbami pierwszymi w przeciwnym wypadku słowo NIE

język c++


Odpowiedź :

#include<iostream>

using namespace std;

bool czy_pierwsza(int a)

{

if(a == 1 || a == 0){

 return false;

}

for(int i=2;i*i<=a;i++){

 if(a%i==0)

  return false; }

return true;

}

bool czy_lustrzana (int a, int b){

  int c = 0;

   if(czy_pierwsza(a) && czy_pierwsza(b)){

       while( b ) {

       c = c * 10 + b % 10;

       b /= 10;

       if ( a == c){

           return true;

       }

   }

   }

   return false;

}

int main()

{

   int a,b;

   cout << "Podaj 1 liczbe";

   cin >> a;

   cout << " Podaj 2 liczbe";

   cin >> b;

   if(czy_lustrzana(a,b)){

       cout << "Tak";

   }

   else {

       cout << "Nie";

   }

   return 0;

}