溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

php如何判斷一個(gè)數(shù)是不是素?cái)?shù)

發(fā)布時(shí)間:2020-09-18 12:06:00 來源:億速云 閱讀:312 作者:小新 欄目:編程語言

小編給大家分享一下php如何判斷一個(gè)數(shù)是不是素?cái)?shù),相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

 質(zhì)數(shù)又稱素?cái)?shù)。一個(gè)大于1的自然數(shù),除了1和它自身外,不能被其他自然數(shù)整除的數(shù)叫做質(zhì)數(shù);否則稱為合數(shù)。(注:1不是素?cái)?shù)。)

下面我們就來介紹php判斷素?cái)?shù)的三種方法是什么?

方法一:

基本方法,——計(jì)數(shù)方法。

$num = 7;$n = 0; //用于記錄能被整除的個(gè)數(shù) -- 計(jì)數(shù)
for($i = 1;$i <= $num; ++$i){    
    if($num % $i == 0){        
       $n++;
    }
}
if($n == 2){    
   echo "$num 是素?cái)?shù)";
}else{    
   echo "$num 不是素?cái)?shù)";
}

方法二:

就是一個(gè)數(shù)等于兩個(gè)數(shù)乘積時(shí),其中一個(gè)數(shù)肯定小于該數(shù)的一半。利用break;只要其中有一個(gè)數(shù)能被除盡,就立即結(jié)束循環(huán)。這樣就可以減少循環(huán)次數(shù),加快速度。

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

方法三:

同上,兩個(gè)數(shù)相乘的乘積等于一個(gè)數(shù)時(shí),那么其中一個(gè)數(shù),肯定要小于該數(shù)的平方根。

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

以上是php如何判斷一個(gè)數(shù)是不是素?cái)?shù)的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI