亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

php趣味編程 - php 打印楊輝三角

標簽:
PHP

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

wKiom1LOGYPSdoT_AAAbMpEaA_o517.jpg

<?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 />';//换行为了美观

    }

        ?>

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 1
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消