# Java Program to Check Whether a Number is Prime or Not

To understand this example, you should have the knowledge of the following Java programming topics:

A prime number is a number that is divisible by only two numbers: 1 and itself. So, if any number is divisible by any other number, it is not a prime number.

## Example 1: Program to Check Prime Number using a for loop

``````public class Main {

public static void main(String[] args) {

int num = 29;
boolean flag = false;

// 0 and 1 are not prime numbers
if (num == 0 || num == 1) {
flag = true;
}

for (int i = 2; i <= num / 2; ++i) {

// condition for nonprime number
if (num % i == 0) {
flag = true;
break;
}
}

if (!flag)
System.out.println(num + " is a prime number.");
else
System.out.println(num + " is not a prime number.");
}
}``````

Output

`29 is a prime number.`

In the above program, for loop is used to determine if the given number num is prime or not.

Here, note that we are looping from 2 to num/2. It is because a number is not divisible by more than its half.

Inside the `for` loop, we check if the number is divisible by any number in the given range `(2...num/2)`.

• If num is divisible, flag is set to `true` and we break out of the loop. This determines num is not a prime number.
• If num isn't divisible by any number, flag is false and num is a prime number.

## Example 2: Program to Check Prime Number using a while loop

``````public class Main {

public static void main(String[] args) {

int num = 33, i = 2;
boolean flag = false;

// 0 and 1 are not prime numbers
if (num == 0 || num == 1) {
flag = true;
}

while (i <= num / 2) {

// condition for nonprime number
if (num % i == 0) {
flag = true;
break;
}

++i;
}

if (!flag)
System.out.println(num + " is a prime number.");
else
System.out.println(num + " is not a prime number.");
}
}``````

Output

`33 is not a prime number.`

In the above program, while loop is used instead of a for loop. The loop runs until `i <= num/2`. On each iteration, whether num is divisble by i is checked and the value of i is incremented by 1.

Before we wrap up, let’s put your knowledge of Java Program to Check Whether a Number is Prime or Not to the test! Can you solve the following challenge?

Challenge:

Write a function to check if a number is prime or not.

• A number is prime if it has only two distinct divisors: 1 and itself. For instance, numbers like 2, 3, 5, and 7 are all prime.
• If the number is prime, return `"It's a prime number"`. Otherwise, return `"It's not a prime number"`.