# Java Program to Check Pointer Prime Number

In the previous article, we have seen Java Program to Check Insolite Number

In this article we are going to seeĀ  how we can write a program to find out whether the number is pointer prime or not.

## Java Program to Check Pointer Prime Number

The number which is a prime number, and the next prime number can be find out by adding the product of the digit to its number is called pointer prime.

Let’s see different ways to check pointer prime number.

### Method-1: Java Program to Check Pointer Prime Number

Approach :

• Initialize an integer variable and declare the value to it .
• Check the number is prime or not.
• If the number is prime, then find out the product of the digit and add to itself and check whether the result is next prime to it or not .
• If number is not prime the return false .

Program :

import java.util.*;
public class Main
{
// Driver Code
public static void main(String[] args)
{
// Given Number num
int num = 1123;
// Function Call
if (isPointerPrime(num))
System.out.print("Entered number "+num+" is Pointer Prime");
else
System.out.print("Entered number "+num+" is not Pointer Prime");
}

// Function that returns true if a is prime else returns false
static boolean isPrime(int num)
{
// Corner cases
if (num <= 1)
return false;
if (num <= 3)
return true;
// This is checked so that we can skip middle five numbers in below loop
if (num % 2 == 0 || num % 3 == 0)
return false;
for (int x = 5; x * x <= num; x = x + 6)
if (num % x == 0 || num % (x + 2) == 0)
return false;
return true;
}

// Function to find the product of digits of num number N
static int digprod(int num)
{
int prod = 1;
while (num != 0)
{
prod = prod * (num % 10);
num = num / 10;
}
return prod;
}

// Function to return the next prime
static int nxtprm(int num)
{

// Base case
if (num <= 1)
return 2;

int prime = num;
boolean found = false;
// Loop continuously until isPrime returns true for a number greater than n
while (!found)
{
prime++;
if (isPrime(prime))
found = true;
}
return prime;
}

// Function to check Pointer-Prime numbers
static boolean isPointerPrime(int num)
{
if (isPrime(num) && (num + digprod(num) == nxtprm(num)))
return true;
else
return false;
}
}

Output:

Entered number 1123 is Pointer Prime

### Method-2: Java Program to Check Pointer Prime Number

Approach :

• Initialize a integer variable and take the value for it as user input.
• Check the number is prime or not
• If the number is prime then find out the product of the digit and add to itself and check whether the result is next prime to it or not .
• If number is not prime the return false .

Program :

import java.util.*;

public class Main
{

// Driver Code
public static void main(String[] args)
{
Scanner s = new Scanner(System.in);
// entering the number  through user input
System.out.print("Enter a number  : ");
int num= s.nextInt();
// Function Call
if (isPointerPrime(num))
System.out.print("Entered number "+num+" is Pointer Prime");
else
System.out.print("Entered number "+num+" is not Pointer Prime");
}

// Function that returns true if a is prime else returns false
static boolean isPrime(int num)
{
// Corner cases
if (num <= 1)
return false;
if (num <= 3)
return true;
// This is checked so that we can skip middle five numbers in below loop
if (num % 2 == 0 || num % 3 == 0)
return false;
for (int x = 5; x * x <= num; x = x + 6)
if (num % x == 0 || num % (x + 2) == 0)
return false;
return true;
}

// Function to find the product of digits of num number N
static int digprod(int num)
{
int prod = 1;
while (num != 0)
{
prod = prod * (num % 10);
num = num / 10;
}
return prod;
}

// Function to return the next prime
static int nxtprm(int num)
{

// Base case
if (num <= 1)
return 2;

int prime = num;
boolean found = false;
// Loop continuously until isPrime returns true for a number greater than n
while (!found)
{
prime++;
if (isPrime(prime))
found = true;
}
return prime;
}

// Function to check Pointer-Prime numbers
static boolean isPointerPrime(int num)
{
if (isPrime(num) && (num + digprod(num) == nxtprm(num)))
return true;
else
return false;
}
}


Output:

Enter a number : 23
Entered number 23 is Pointer Prime

Access the Simple Java program for Interview examples with output from our page and impress your interviewer panel with your coding skills.

Related Java Programs: