判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整
除,则表明此数不是素数,反之是素数。
2 回答
灬紫羽
TA贡献107条经验 获得超71个赞
<?php /* * 返回某个范围内的所有素数 * @param $startNumber 开始数字 * @param $endNumber 结束数字 */ function showPrimeNumber($startNumber,$endNumber){ if($startNumber == 1){ $startNumber +=1; } $numbers = array();//保存所有的数字 $compositeNums = array();//保存所有的合数 for($i=$startNumber;$i<$endNumber;$i++){ array_push($numbers,$i); for($j=2;$j<$i;$j++){ if($i%$j == 0){ array_push($compositeNums,$i); break; } } } $primeNums = array_diff($numbers,$compositeNums);//保存所有的素数 return $primeNums; } $result = showPrimeNumber(101,200); var_dump($result); echo "素数个数:".count($result);
LIANHK
TA贡献78条经验 获得超17个赞
$count = 0; for($i = 101; $i <= 200; $i ++) { for($j = 2; $j < $i; $j ++) { // 如果j能被i整出在跳出循环 if ($i % $j == 0) break; } // 判断循环是否提前跳出,如果j<i说明在2~j之间,i有可整出的数 if ($j >= $i) { $count ++; printf ( "%d ", $i ); // 换行,用count计数,每五个数换行 if ($count % 5 == 0) printf ( "\n" ); } }
望采纳
- 2 回答
- 1 关注
- 1459 浏览
添加回答
举报
0/150
提交
取消