Find nth prime number in java

In this post, we will see how to find nth Prime number in java.
[toc]

What is prime number

Prime number is a number that is greater than 1 and divided by 1 or itself.
For example: 5, 7, 13, 23

We have already seen how to check if number is prime or not. We will use same method to find nth prime number in java.

Nth prime number in java

Here are steps to find nth prime number in java.

  • Take value of n from user using Scanner class.
  • Intialize a variable count. It will keep track of number of prime number processed so far.
  • Intialize a variable i. It will keep track of current number.
  • Iterate over while loop until count ! = n
    • Increment i by 2 as even numbers are not prime
    • Check if number is prime. If number is prime then increment count by 1.
  • Return i which is nth prime number.
package org.arpit.java2blog;

import java.util.Scanner;

public class NthPrimeNumberJava {

    public static void main(String args[]){

        Scanner in = new Scanner(System.in);

        //Input the value of 'n'
        System.out.println("Enter the value of n");
        int n= in.nextInt();

        int nthPrimeNumber = findNthPrimeNumber(n);
        System.out.println("Nth Prime Number is: "+nthPrimeNumber);
    }

    private static int findNthPrimeNumber(int n)
    {
        if(n==1)
        {
            return 2;
        }

        int i=1;
        int count=1;
        //While loop should run until we find nth prime number i.e (count != n)
        while(count != n){
            // increment number by 2 as even numbers are always not prime
            i+=2;

            if(isPrime(i))
                count++;  // increment the count when we get prime number
        }
        // return nth prime number
        return i;
    }

    public static boolean isPrime(int num) {
        if (num <= 1) {
            return false;
        }
        for (int i = 2; i <= Math.sqrt(num); i++) {
            if (num % i == 0) {
                return false;
            }
        }
        return true;
    }
}

Output:

Enter the value of n
24
Nth Prime Number is: 89

That's all about how to find nth prime number in java.

[social_share share_on="facebook,twitter,linkedin,whatsapp"][post_navigator in_same_term="true"]

Leave a Reply

Your email address will not be published. Required fields are marked *

Subscribe to our newletter

Get quality tutorials to your inbox. Subscribe now.