php趣味编程-php打印杨辉三角

php趣味编程 - php 打印杨辉三角

php趣味编程 - php 打印杨辉三角

创新互联长期为近1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为自流井企业提供专业的网站设计制作、网站建设自流井网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。

<?php
/*
打印杨辉三角
1
1 1
1 2 1
1 3 3  1
1 4 6  4  1
1 5 10 10 1
$i 来代表行数
$j 来代表一行第几个数
数组$arr 来存 杨辉三角的数
$arr[$i][] =来代表一行的数
我们先来看下杨辉三角的含义:
从第三行开始的数等于它的上一行的数+它上一行左边的数即:
$arr[$i][$j] = $arr[$i-1][$j] + $arr[$i-1][$j-1]
然后每行的第一个数跟最后一个数都是1即
$arr[$i][0] = 1; $arr[$i][$i] = 1
然后输出二维数组
*/
?>
<?php
    $arr = array();//用来存杨辉三角的数
    $i = 10;//要输出的行数
       
    for($n=0;$n<$i;$n++)
    {
        $arr[$n][0] = 1; //每行的第一数是1
        $arr[$n][$n] = 1; //每行的最后一个是1
    }
    //每行的第2个数开始等与上一行的数+上一行左边的数
    //$arr[0][1] = $arr[0-1][1] + $arr[0-1][1-1];
    //$arr[1][1] = $arr[1-1][1] + $arr[1-1][1-1];
    //$arr[2][1] = $arr[2-1][1] + $arr[2-1][2-1];
    for($m=1;$m<$i;$m++)//输出从第一行的
    {
        /*
        因为前面已经定义了第一个元素。接下来从第2个元素开始
        $arr[$m][1] = $arr[$m-1][1]+$arr[$m-1][1-1]输出每行的第2个元素
        $arr[$m][2] = $arr[$m-1][2]+$arr[$m-1][2-1]输出每行的第3个元素
        $arr[$m][3] = $arr[$m-1][3]+$arr[$m-1][3-1]输出每行的第3个元素
        一直到$arr[$m][$n] $n = $m 每行的第n个数
        */
        for($n=1;$n<=$m;$n++)
        {
            $arr[$m][$n] = $arr[$m-1][$n] + $arr[$m-1][$n-1];//
        }
    }
       
    /*
    已经把数存到二维数组$arr里面、那么就输出二维数组
    */
    //print_r($arr);
    for($nn=0;$nn<sizeof($arr);$nn++)
    {
        for($mm=0;$mm<sizeof($arr[$nn]);$mm++)
        {
            echo $arr[$nn][$mm].'&nbsp;&nbsp;';//输出二维数组
        }
        echo '<br />';//换行为了美观
    }
       
?>

当前文章:php趣味编程-php打印杨辉三角
网页URL:https://www.cdcxhl.com/article0/pchgio.html

成都网站建设公司_创新互联,为您提供动态网站手机网站建设品牌网站建设网站设计软件开发网站策划

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

商城网站建设