首页  >  文章  >  后端开发  >  php判断一个数是否为素数

php判断一个数是否为素数

(*-*)浩
(*-*)浩原创
2019-09-27 15:26:483920浏览

素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做素数;否则称为合数。

php判断一个数是否为素数

若一个数n能被2和√n之间的数整除(取余为0),则可判断n为素数。可从2开始测试,一直到√n为止。

在一般领域,对正整数n,如果用2到 之间的所有整数去除,均无法整除,则n为素数。(推荐学习:PHP编程从入门到精通

素数大于等于2 不能被它本身和1以外的数整除

具体就不进行证明了,举个栗子:

      16 = 2*8
      16 = 4*4
      16 = 8*2
      √16 = 4

 如果大于,即c=a*b和c=b*a就重复了

function isPrime($n) {
    if ($n <= 3) {
        return $n > 1;
    } else if ($n % 2 === 0 || $n % 3 === 0) { // 排除能被2整除的数(2x)和被3整除的数(3x)
        return false;
    } else { // 排除能被6x+1和6x+5整除的数
        for ($i = 5; $i * $i <= $n; $i += 6) {
            if ($n % $i === 0 || $n % ($i + 2) === 0) {
                return false;
            }
        }
        return true;
    }
}

以上是php判断一个数是否为素数的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn