首页  >  文章  >  后端开发  >  php如何判断是否为素数?判断素数的三种方法(代码示例)

php如何判断是否为素数?判断素数的三种方法(代码示例)

青灯夜游
青灯夜游转载
2018-11-22 14:56:199901浏览

本篇文章给大家带来的内容是介绍php如何判断是否为素数?判断素数的三种方法(代码示例)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

什么是素数?

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

下面我们就来介绍php判断素数的三种方法是什么?

方法一:

  基本方法,——计数方法。

$num = 7;
$n = 0; //用于记录能被整除的个数 -- 计数
for($i = 1;$i <= $num; ++$i){    
    if($num % $i == 0){        
       $n++;
    }
}
if($n == 2){    
   echo "$num 是素数";
}else{    
   echo "$num 不是素数";
}

方法二:

  就是一个数等于两个数乘积时,其中一个数肯定小于该数的一半。利用break;只要其中有一个数能被除尽,就立即结束循环。这样就可以减少循环次数,加快速度。

$num = 5;
$flag = true;
for($i = 2;$i <= $num/2;++$i){    
    if($num % $i == 0){        
    $flag = false;        
    break;
  }
}if($flag){
    echo "$num 是素数";
}else{
    echo "$num 不是素数";
}

方法三:

  同上,两个数相乘的乘积等于一个数时,那么其中一个数,肯定要小于该数的平方根。

$num = 4;
for($i = 2;$i<$num;++$i){    
    if($num % $i == 0){        
         echo "$num 不是素数";        
         break;
    }    
    if($i >= sqrt($num)){        
       echo "$num 是素数";        
       break;
    }
}

总结:以上就是本篇文章的全部内容,大家可以自己动手试试,加深理解。希望能对大家的学习有所帮助,更多相关视频教程推荐:PHP中文网

以上是php如何判断是否为素数?判断素数的三种方法(代码示例)的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:cnblogs.com。如有侵权,请联系admin@php.cn删除