# Java Program to Check If a Number is Prime or Not Using Recursion

In this article we are going to see how we can check if a number is prime or not using recursion by Java programming language.

## Java Program to Check If a Number is Prime or Not Using Recursion

A number is said to be prime number if it has only 2 factors i.e. 1 and the number itself. Means other than 1 and itself it is not divisible by any other numbers.

For example- 7, 13, 19, 29 etc.

Here you have to write the program check if a number is prime or not using recursion.

### Method-1: Java Program to Check If a Number is Prime or Not Using Recursion By Using Static Input Value

Approach:

• Declare an Integer variable ‘num’ and initialize with 59.
• Call the user defined method checkPrime( ) by passing the ‘num’ and its half.
• The user-defined method takes a ‘num’ and its half as input. Then keeps on decrementing the half until it divides the ‘num‘ or it reaches 1 using recursion.
• Print the result.

Program:

import java.util.*;
// Main class
public class Main
{
// Recursive method to check for prime
public static int checkPrime(int num, int i)
{
if (i != 1)
{
// checks if the number is divisible
if (num % i != 0)
{
// Decrements the divisor by 1 every call
return checkPrime(num, i - 1);
}
else
{
return 0;
}
}
else
{
return 1;
}
}

public static void main(String[] args)
{
int num = 59;
// Call the method and store the result
int res = checkPrime(num,num/2);
// Print the result
if(res==1)
System.out.println(num+" is prime.");
else
System.out.println(num+" is not prime.");
}
}

Output:

59 is prime.

### Method-2: Java Program to Check If a Number is Prime or Not Using Recursion By Using User Input Value

Approach:

• Ask the user to enter a number and store it in ‘num‘ variable.
• Call the user defined method checkPrime( ) by passing the ‘num‘ and its half.
• The user-defined method takes a ‘num‘ and its half as input . Then keeps on decrementing the half until it divides the ‘num‘ or it reaches 1 using recursion.
• Print the result.

Program:

import java.util.*;
// Main class
public class Main
{
// Recursive method to check for prime
public static int checkPrime(int num, int i)
{
if (i != 1)
{
// checks if the number is divisible
if (num % i != 0)
{
// Decrements the divisor by 1 every call
return checkPrime(num, i - 1);
}
else
{
return 0;
}
}
else
{
return 1;
}
}

public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
// Asks the user for input
System.out.println("Enter a number");
int num = sc.nextInt();
// Call the method and store the result
int res = checkPrime(num,num/2);
// Print the result
if(res==1)
System.out.println(num+" is prime.");
else
System.out.println(num+" is not prime.");
}
}

Output:

Enter a number
153
153 is not prime.

Grab the opportunity to learn all effective java programming language concepts from basic to advance levels by practicing these Java Program Examples with Output.