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.

**Also Read:**