java中怎么判断数字是否是质数
发布时间:2020-06-21 11:36:39
来源:亿速云
阅读:108
作者:元一
质数的定义:
质数(prime number)又称素数,有无限个。一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则称为合数。
根据算术基本定理,每一个比1大的整数,要么本身是一个质数,要么可以写成一系列质数的乘积;而且如果不考虑这些质数在乘积中的顺序,那么写出来的形式是唯一的。最小的质数是2。
判断一个数是否为质数的方法:
如果是偶数,直接返回;然后从3开始,步长为2,一直到n的算术平方根为止,都除不尽则为质数。
Java程序:public class Main {
public static void main(String[] args) {
for (int j = 0; j <= 19; j++) {
System.out.println(j+": "+isPrime(j) );
}
}
private static boolean isPrime(int src) {
double sqrt = Math.sqrt(src);
if (src < 2) {
return false;
}
if (src == 2 || src == 3) {
return true;
}
if (src % 2 == 0) {// 先判断是否为偶数,若偶数就直接结束程序
return false;
}
for (int i = 3; i <= sqrt; i+=2) {
if (src % i == 0) {
return false;
}
}
return true;
}
}