思路:
如果要计算$num的质数,则至少收集$num以内的质数数组,判断$num是否在质数数组里:
如果否,则判断当前质数$zhishu[$i]是否能再次将整除后的数整除,如果能,则质数数组“游标”不移动(还让当前质数$zhishu[$i]对被整除后的数取模)
如果不能(再次将整除后的数整除),则用下一个质数(让$i++)去测试是否整除。如果否($num在质数数组里),则表示$num本身就是个质数,直接echo之。(思路看得糊涂的话,直接看代码吧)
首先:用一个函数收集一定范围内的质数放到数组里返回。(把1从质数里剔除,从2开始算质数),代码和注释如下:
//得到1000以内的质数
function get_zhishu($num=1000){
$num = floor($num);
$zhishu = array();
//先得到1000