php判断一个数是否为素数

(*-*)浩
(*-*)浩原创
2023-02-25 10:04:012918浏览

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

若一个数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核实处理。