Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <iomanip>
- #include <cmath>
- using namespace std;
- bool isPrime(int number)
- {
- for (int divisor = 2; divisor <= number / 2; divisor++)
- {
- if (number % divisor == 0)
- {
- return false;
- }
- }
- return true;
- }
- int intLen(int number)
- {
- int len = 0;
- int temp = number;
- while (temp > 0)
- {
- temp = temp / 10;
- len++;
- }
- if (number == 0)
- len = 1;
- return len;
- }
- bool isPalindrome(int number)
- {
- int length = intLen(number);
- int n1 = number;
- for (int i = length; length > 1; length--)
- {
- int a = n1 % 10;
- int n2 = n1 - a;
- length--;
- int b = n1 / (pow(10, length));
- int n3 = n1 - (b * (pow(10, length)));
- length--;
- cout << "n1 is: " << n1 << " and n2 is: " << n2 << " and n3 is: " << n3 << endl;
- if (n2 != n3)
- return false;
- }
- return true;
- // int number;
- // int div = 1;
- // while (number / div >= 10)
- // {
- // div *= 10;
- // }
- // while (number != 0)
- // {
- // int l = number / div;
- // int r = number % 10;
- // if (l != r)
- // return false;
- // number = (number % div) / 10;
- // div /= 100;
- // }
- // return true;
- }
- void printPrimePalindromes(int numberOfPrimes)
- {
- const int NUMBER_OF_POINTS = 100;
- int counter = 0;
- int number = 2;
- while (counter < numberOfPrimes)
- {
- if (isPrime(number) && isPalindrome(number))
- {
- counter++;
- if (counter % 10 == 0)
- {
- cout << setw(4) << number << endl;
- }
- else
- cout << setw(4) << number;
- }
- number++;
- }
- }
- int main()
- {
- cout << "First 100 Primes and Palindromes are \n";
- printPrimePalindromes(100);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement