PHP输出100以内的质数(包括普通写法和数组形式输出)
生活随笔
收集整理的這篇文章主要介紹了
PHP输出100以内的质数(包括普通写法和数组形式输出)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
質數:質數又稱素數。一個大于1的自然數,除了1和它自身外,不能被其他自然數整除的數叫做質數;否則稱為合數。
在這里我們采用函數封裝的寫法,可以靈活的去改變數的范圍。
1、普通的寫法:
isPrimeNum(100); // 100以內的質數 /*** 輸出某個范圍內的所有質數* @param int $num 范圍數* @return int $i 符合條件的所有質數*/ function isPrimeNum($num) {for ($i = 2; $i <= $num; $i++) {// 創建一個標志,用來保存結果,默認$i是質數$flag = true;// 判斷 $i是否是質數// 獲取 2~$i 之間所有的數for ($j = 2; $j < $i; $j++) {// 判斷 $i 是否能被整除if ($i % $j == 0) {// 如果進入判斷,則證明 $i不是質數$flag = false;break;}}// 如果是質數,則打印 $i 的值if ($flag) {echo $i . "<br>";}} }運行結果:
2、以數組的形式輸出:
isPrimeNum(100); // 輸出100內的質數 /*** 輸出某個范圍內的所有質數* @param int $num 范圍數* @return array $arr 符合條件的質數組成的數組*/ function isPrimeNum($num) {$arr = [];for ($i = 2; $i <= $num; $i++) {// 創建一個標志,用來保存結果,默認$i是質數$flag = true;// 判斷 $i是否是質數// 獲取 2~$i 之間所有的數for ($j = 2; $j < $i; $j++) {// 判斷 $i 是否能被整除if ($i % $j == 0) {// 如果進入判斷,則證明 $i不是質數$flag = false;break;}}// 如果是質數,則打印 $i 的值if ($flag) {array_push($arr, $i);}}print_r($arr); }運行結果:
注:大家如果想輸出其他范圍內的質數,在調用函數的時候,傳入你需要的數即可。如求50以內的所有質數,則傳入的數為50,此時調用的函數為 isPrimeNum(50),其他的類似。【僅以此獻給初學者】
總結
以上是生活随笔為你收集整理的PHP输出100以内的质数(包括普通写法和数组形式输出)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RS485协议详解RS485与RS232
- 下一篇: RS485通讯协议