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: