#include <iostream>
#include <cmath>
#include <string>
using namespace std;
// Function to check if a number is prime
bool isPrime(int num) {
if (num < 2) return false;
for (int i = 2; i <= sqrt(num); i++) {
if (num % i == 0) return false;
}
return true;
}
// Function to generate a rotation of digits
int rotateNumber(int num) {
string s = to_string(num);
// Move first digit to the end
string rotated = s.substr(1) + s[0];
return stoi(rotated);
}
// Function to check if a number is circular prime
bool isCircularPrime(int num) {
int rotations = to_string(num).length();
int current = num;
for (int i = 0; i < rotations; i++) {
if (!isPrime(current)) return false;
current = rotateNumber(current);
}
return true;
}
int main() {
int number;
cout << "Enter a number: ";
cin >> number;
if (isCircularPrime(number))
cout << number << " is a Circular Prime." << endl;
else
cout << number << " is NOT a Circular Prime." << endl;
return 0;
}