Design a class PrimePalinGen to generate prime palindrome numbers.
[ A number is said to be prime palindrome if the number is a prime as well as a palindrome number ] [ Prime number: A number having only two factors i.e. 1 and itself ] [ Palindrome number: A number which is same as its reverse ] Example 11(where 11 is a prime number and a palindrome number) Some of the members of the class are given below: class name : PrimePalinGen
Data
members/instance variables: start : to store the start of range end : to store the end of range Method/ Member functions: PrimePalin (int a, int b) : constructor to initialize the data members start=a and end=b int isPrime(int i) : returns 1 if the number is prime otherwise returns 0 int isPalin(int i) : returns 1 if the number is a palindrome otherwise returns 0 void generate( ) : generate all prime palindrome numbers between start and end by invoking the functions isPrime() and isPalin(). Specify the class PrimePalinGen giving details of the constructor( ),int isPrime(int), int isPalin(int) and void generate( ). Define a main( ) function to create an object and call the functions accordingly to enable the task.
public class PrimePalinGen
{
int start;
int end;
PrimePalinGen (int a, int b)
{
start = a;
end = b;
}
int isPrime(int n)
{
int flag=1;
// Corner case
if (n <= 1)
flag=0;;
// Check from 2 to n-1
for (int i = 2; i < n; i++)
if (n % i == 0)
flag=0;
return flag;
}
int isPalin(int num)
{
int temp=num, rev=0,digit=0, flag=0;
while(temp>0){
digit=temp%10;
rev=rev*10+digit;
temp= temp/10;
}
if (rev == num)
flag=1;
return flag;
}
void generate( )
{
int flag=1;
System.out.println(" Prime Palindome Nos are ");
for( int i =start; i<end;i++)
if(isPalin(i)==1)
if(isPrime(i)==1){
System.out.print(i+" ");
flag=0;
}
}
public static void main()
{
PrimePalinGen A = new PrimePalinGen(10,500);
A.generate();
}
}