Guest User

Untitled

a guest
May 26th, 2015
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.41 KB | None | 0 0
  1. #include <iostream>
  2. #include <iomanip>
  3. #include <cmath>
  4. using namespace std;
  5.  
  6. bool isPrime(int number)
  7. {
  8.     for (int divisor = 2; divisor <= number / 2; divisor++)
  9.     {
  10.         if (number % divisor == 0)
  11.         {
  12.             return false;
  13.         }
  14.     }
  15.     return true;
  16. }
  17. int intLen(int number)
  18. {
  19.     int len = 0;
  20.     int temp = number;
  21.     while (temp > 0)
  22.     {
  23.         temp = temp / 10;
  24.         len++;
  25.     }
  26.     if (number == 0)
  27.         len = 1;
  28.  
  29.     return len;
  30. }
  31.  
  32. bool isPalindrome(int number)
  33. {
  34.         int length = intLen(number);
  35.         int n1 = number;
  36.  
  37.         for (int i = length; i > 1; i--)
  38.         {
  39.             int a = n1 % 10;
  40.             int n2 = n1 - a;
  41.             i--;
  42.             int b = n1 / (pow(10, i));
  43.             int n3 = n1 - (b * (pow(10, i)));
  44.             i--;
  45.             cout << "\nn1 is: " << n1 << " \tn2 is: " << n2 << " \tn3 is: " << n3 << "\ti: " << i <<
  46.                 "\ta: " << a << "\tb: " << b << "\tlength: " << length << endl;
  47.            
  48.                 if (n2 != n3)
  49.                 {
  50.                     return false;
  51.                     break;
  52.                 }
  53.         }
  54.         return true;
  55. }
  56.  
  57. void printPrimePalindromes(int numberOfPrimes)
  58. {
  59.     const int NUMBER_OF_POINTS = 100;
  60.     int counter = 0;
  61.     int number = 2;
  62.  
  63.     while (counter < numberOfPrimes)
  64.     {
  65.         if (isPrime(number) && isPalindrome(number))
  66.         {
  67.             counter++;
  68.             if (counter % 10 == 0)
  69.             {
  70.                 cout << setw(4) << number << endl;
  71.             }
  72.             else
  73.                 cout << setw(4) << number;
  74.         }
  75.         number++;
  76.     }
  77. }
  78.  
  79.     int main()
  80.     {
  81.         cout << "First 100 Primes and Palindromes are \n";
  82.         printPrimePalindromes(100);
  83.         return 0;
  84.     }
Advertisement
Add Comment
Please, Sign In to add comment