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

Să se afișeze toate
NUMERELE - PALINDROME - PRIME.​


Sergetec: In ce limbaj?
vladutflorianm: c++ și c#.

Răspunsuri la întrebare

Răspuns de Sergetec
0

Salut!

Sper ca te ajuta in C++

#include <iostream>

using namespace std;

bool prim(int n) {

   if (n <= 1) {

       return false;

   }

   else if (n != 2 && n % 2 == 0) {

       return false;

   }

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

       if (n % i == 0) {

           return false;

       }

   }

   return true;

}

bool palindrom(int n) {

   int cn = n;

   int ogl = 0;

   while (n) {

       ogl = ogl * 10 + n % 10;

       n /= 10;

   }

   return cn == ogl;

}

bool ok(int n) {

   if (prim(n) && palindrom(n)) {

       return true;

   }

   return false;

}

int main() {

   for (int i = 2; i <= 10000000; ++i) {

       if (ok(i)) {

           cout << i << " ";

       }

   }

   return 0;

}

  • Initial am pus for ul pana la limita intului de 32 bits dar din cate am observat s-a oprit la numarul 9989899 asadar am decis la aceasta  limita. Daca chiar vrei poti da increase pana la limita u long long desi nu cred ca vei primi si alte rezultate.

vladutflorianm: Mulțumesc pentru răspuns.
Alte întrebări interesante