php-素数

写函数创建长度为n的数组,数组中的元素为递增的素数(质数),首项为2.

有两种输出:数组输出和int类型输出

int类型输出起源于另外一篇帖子,稍作了改动,加入了数组。

第一篇代码来自于此:http://t.csdn.cn/CWHxE

<?php
echo '100以内的素数:'.'<br>';
    for($i=2;$i<=100;$i++) {
        for($j=2;$j<=$i;$j++){
            //echo $i." ".$j."\t".'<br>';
            //这行代码可以查看循环过程便于理解,自始至终,$i的循环都没有停止过
            if($i%$j==0){
                break;//结束内循环
                //成为素数有两个原因(除了1):它是本身,只能自己除自己
                //循环两边,外循环=内循环,先自己除自己,后自己等于自己
            }
            else{
                continue;//跳出单次循环,当除数为整数时不再遍历
            }
        }
        if($i==$j){
            $con++;
            echo '素数为:'.$i."\t";//单个输出
        }
        }
    echo '<br>'.'共计:'.$con.'个数字'.'<hr>';
?>
<?php
//数组输出
function sumu($m){
     $arr=array();
    for($i=2;$i<=$m;$i++) {
        for($j=2;$j<=$i;$j++){
            //echo $i." ".$j."\t".'<br>';
            //这行代码可以查看循环过程便于理解,自始至终,$i的循环都没有停止过
            if($i%$j==0){
                break;//结束内循环
                //成为素数有两个原因(除了1):它是本身,只能自己除自己
                //循环两边,外循环=内循环,先自己除自己,后自己等于自己
            }
            else{
                continue;//跳出单次循环,当除数为整数时不再遍历
            }
        }
        if($i==$j){
            $arr[]=$i;//存放到数组里面
        }
        }
        return $arr;        
}
$yyy=sumu(100);//引用传参;
print_r($yyy);
?>
个人推荐用数组,参数可以更快的去做改动,且不破坏原来的结构,灵活性更高;如果是固定值用第一种确实方便,更容易看懂,主要依情况而定。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值