php求不大於n的最大質數
阿新 • • 發佈:2019-01-24
<?php 2 3 function check( $n ){ 4 $n = (int)$n; 5 if( $n <= 1 ) return false; 6 $arr = array(2,3); 7 if ( in_array($n , $arr ) ) return $n; 8 for( $i=2;$i<=$n;$i++ ){ 9 $k = 0; 10 for( $j=1;$j<=$i;$j++ ){ 11 if( $i%$j == 0 ) $k++; 12 } 13 if( $k == 2 ) array_push($arr , $i); 14 } 15 return max( $arr ); 16 } 17 fwrite(STDOUT , '輸入一個數字:'); 18 $n = trim(fgets(STDIN)); 19 $max = check($n ); 20 21 $str = $max ? $max.'是不大於'.$n.'的最大質數' : '輸入大於1的數' ; 22 echo $str;