首页 > 其他 > 详细

判断质数

时间:2020-09-24 16:19:40      阅读:26      评论:0      收藏:0      [点我收藏+]

质数

质数又称为素数,是指大于1的并且除了1和它本身外,没有其他因数的自然数。

判断一个数是否是质数

假设该数为n, 我们只需要判断[2, n \sqrt{n}n?]内是否有n的因子。如果有,则n为合数,否则,n为质数。
这种方法被称为试除法, 即试着除一下所有可能的因子。

试除法代码:

public static Boolean isprime(int n){
    if(n == 1) return false;
    for(int i = 2; i <= n / i; i++){
        if(n % i == 0){
            return false;
        }
    }
    return true;
}

注意:以上代码中,for循环的结束条件是 i <= n/i,相当于i <= sqrt(n),两种写法都可以,只不过调用sqrt()函数会慢一些,因为for循环每次循环都会调用该函数。另外,不能写成i * i <= n
因为当n很接近int的最大值时,i*i可能会溢出。

 

判断质数

原文:https://www.cnblogs.com/de-ming/p/13723546.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!