Programming Examples

Java program to print prime adam number between given range


A Prime-Adam integer is a positive integer (without leading zeros) which is a Prime as well as an Adam number.

Prime Number : A number which has only two factors, i.e. 1 and the number itself.

Example: 2, 3, 5, 7 …etc.

Adam number: The square of a number and the square of its reverse are reverse to each other.

Example : If n=13 and reverse of ‘n’ =31, then,

(13)2  = 169

(31)2  = 961 which is reverse of 169

thus 13, is an Adam number.

Accept two positive integers m and n, where m is less than n as user input. Display all Prime-Adam integers that are in the range between m and n (both inclusive) and output them along with the frequency, in the format given below:

Test your program with the following data and some random data:

Example 1

INPUT:

m=5

n=100

OUTPUT:

THE PRIME-ADAM INTEGERS ARE:

11 13 31

FREQUENCY OF PRIME-ADAM INTEGERS IS: 3

Example 2

INPUT:

m=100

n=200

OUTPUT:

THE PRIME-ADAM INTEGERS ARE:

101 103 113

FREQUENCY OF PRIME-ADAM INTEGERS IS: 3

Example 3

INPUT:

m=50

n=70

OUTPUT:

THE PRIME-ADAM INTEGERS ARE:

NIL

FREQUENCY OF PRIME-ADAM INTEGERS IS: 0

Example 4

INPUT:

m=700

n=450

OUTPUT: INVALID INPUT.

Solution

import java.util.*;
class PrimeAdamNumber
{
    boolean isPrime(int n) 
    {
        int c = 0;
        for(int i=1; i<=n; i++)
        {
            if(n%i == 0)
            {
                c++;
            }
        }
        if(c == 2)
            return true;
        else
            return false;
    }
     
    int reverseNum(int n) 
    {
        int r = 0, d = 0;
        while(n > 0)
        {
            d = n%10;
            r = r*10 + d;
            n = n/10;
        }
        return r;
    }
     
    boolean isAdam(int n) 
    {
        int rev = reverseNum(n);
        int sqn = n*n;
        int sqr = rev * rev; 
        int rsqn = reverseNum(sqn); 
        if(rsqn == sqr)
            return true;
        else
            return false;
    }
     
    public static void main(String args[]) 
    {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter the lower limit : ");
        int m = sc.nextInt();
        System.out.print("Enter the upper limit : ");
        int n = sc.nextInt();
 
        PrimeAdamNumber ob = new PrimeAdamNumber();
 
        if(m<1 || n<1 || m>n) 
        {
            System.out.println("INVALID INPUT");
        }
        else
        {
            int c = 0;
            System.out.println("THE PRIME-ADAM INTEGERS ARE:");
            for(int i=m; i<=n; i++)
            {
                if(ob.isPrime(i) && ob.isAdam(i)) 
                {
                    c++;
                    System.out.print(i + "\t");
                }
            }
            if(c == 0)
            System.out.print("NIL");
            System.out.println("\nFREQUENCY OF PRIME-ADAM INTEGERS IS:" + c);
        }
    }
}
Output

Enter the lower limit : 100

Enter the upper limit : 200

THE PRIME-ADAM INTEGERS ARE:

101 103 113

FREQUENCY OF PRIME-ADAM INTEGERS IS:3

CCC Online Test 2021 CCC Practice Test Hindi Python Programming Tutorials Best Computer Training Institute in Prayagraj (Allahabad) Best Java Training Institute in Prayagraj (Allahabad) Best Python Training Institute in Prayagraj (Allahabad) O Level Online Test in Hindi Bank SSC Railway TET UPTET Question Bank career counselling in allahabad Sarkari Naukari Notification Best Website and Software Company in Allahabad Sarkari Exam Quiz