Recursive program for prime number

Given a number n, check whether it’s prime number or not using recursion.

Examples:

Input : n = 11
Output : Yes

Input : n = 15
Output : No

The idea is based on school method to check for prime numbers.

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// CPP Program to find whether a Number   
// is Prime or Not using Recursion
#include <bits/stdc++.h>
using namespace std;
  
// Returns true if n is prime, else
// return false.
// i is current divisor to check. 
bool isPrime(int n, int i = 2)
{
    // Base cases
    if (n <= 2)
        return (n == 2) ? true : false;
    if (n % i == 0)
        return false;
    if (i * i > n)
        return true;
  
    // Check for next divisor
    return isPrime(n, i + 1);
}
  
// Driver Program
int main()
{
    int n = 15;
    if (isPrime(n))
        cout << "Yes";
    else
        cout << "No";
  
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// java Program to find whether a Number
// is Prime or Not using Recursion
import java.util.*;
  
class GFG {
  
    // Returns true if n is prime, else
    // return false.
    // i is current divisor to check.
    static boolean isPrime(int n, int i)
    {
  
        // Base cases
        if (n <= 2)
            return (n == 2) ? true : false;
        if (n % i == 0)
            return false;
        if (i * i > n)
            return true;
       
        // Check for next divisor
        return isPrime(n, i + 1);
    }
      
    // Driver program to test above function 
    public static void main(String[] args)
    {
  
        int n = 15;
  
        if (isPrime(n, 2)) 
            System.out.println("Yes");
        else 
            System.out.println("No");
    }
}
  
// This code is contributed by Sam007.

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python 3 Program to find whether
# a Number is Prime or Not using
# Recursion
  
# Returns true if n is prime, else
# return false.
# i is current divisor to check. 
def isPrime(n, i = 2):
  
    # Base cases
    if (n <= 2):
        return True if(n == 2) else False
    if (n % i == 0):
        return False
    if (i * i > n):
        return true
  
    # Check for next divisor
    return isPrime(n, i + 1)
  
  
# Driver Program
n = 15
if (isPrime(n)):
    print("Yes")
else:
    print("No")
      
# This code is contributed by
# Smitha Dinesh Semwal

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# Program to find whether a Number
// is Prime or Not using Recursion
using System;
  
class GFG
{
    // Returns true if n is prime, else
    // return false.
    // i is current divisor to check.
    static bool isPrime(int n, int i)
    {
  
        // Base cases
        if (n <= 2)
            return (n == 2) ? true : false;
        if (n % i == 0)
            return false;
        if (i * i > n)
            return true;
      
        // Check for next divisor
        return isPrime(n, i + 1);
    }
      
      
    // Driver code
    static void Main()
    {
    int n = 15;
  
        if (isPrime(n, 2)) 
            Console.Write("Yes");
        else
            Console.Write("No");
    
      
}
  
// This code is contributed by Sam007

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP Program to find whether a Number 
// is Prime or Not using Recursion
  
// Returns true if n is prime, else
// return false.
// i is current divisor to check. 
function isPrime($n, $i = 2)
{
    // Base cases
    if ($n <= 2)
        return ($n == 2) ? true : false;
    if ($n % $i == 0)
        return false;
    if ($i * $i > $n)
        return true;
  
    // Check for next divisor
    return isPrime($n, $i + 1);
}
  
// Driver Code
$n = 15;
if (isPrime($n))
    echo("Yes");
else
    echo("No");
  
// This code is contributed by Ajit.
?>

chevron_right


Output:

No


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.