质数(又名素数):只能被1和它本身整除的正整数(它本身不能是1,最小的质数是2,2也是唯一的偶数质数)。存在除1和它本身外的因数的正整数是合数。判断一个数是否是质数时,只要试到它的平方根即可。一个合数分解质因数时,最大质因数不会大于它的平方根,所以循环从2到sqrt(n)即可。
public boolean prime(int n){
if(n < 2){
return false;
}
if(n == 2 || n == 3){
return true;
}else{
int a = (int)Math.sqrt(n);
for(int i = 2; i <= a ; i++){
if(n % i == 0){
return false;
}
}
return true;
}
}
Go语言
func isPrime(n int) bool {
if n <= 1 {
return false
}
if n == 2 || n == 3 {
return true
}
var root int = int(math.Sqrt(float64(n)))
for i := 2 ; i <= root ; i++ {
if n % i == 0 {
return false
}
}
return true
}