JavaAlgorithms/Maths/PrimeCheck.java
Lucas 2f62929c1d
Correct the prime check algorithm
There are no prime numbers smaller than 2 and numbers greater than and divisible by 2 are not prime.
2019-10-02 00:37:25 +02:00

38 lines
883 B
Java

package Maths;
import java.util.Scanner;
public class PrimeCheck {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Enter n:");
int n = scanner.nextInt();
if (isPrime(n)) {
System.out.println(n + "is prime number");
} else {
System.out.println(n + "is not prime number");
}
}
/***
* Check a number is prime or not
* @param n the number
* @return {@code true} if {@code n} is prime
*/
public static boolean isPrime(int n) {
if (n == 2) {
return true;
}
if (n < 2 || n % 2 == 0) {
return false;
}
for (int i = 3; i <= Math.sqrt(n); i += 2) {
if (n % i == 0) {
return false;
}
}
return true;
}
}