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);
- for (int i = length; i > 1; i--)
- {
- int a = number / (pow(10, i-1));
- int b = number % 10;
- cout << "\nnumber is: " << number << "\ti: " << i <<
- "\ta: " << a << "\tb: " << b << endl;
- if (a != b)
- {
- return false;
- }
- number /= 10;cout << "\nnumber is: " << number;
- number -= b * (pow(10, i-1));cout << "\nnumber is: " << number;
- }
- 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(7) << number << endl;
- }
- else
- cout << setw(7) << 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