学过编程语言或算法的,势必都要接触到杨辉三角(中国古代数学的杰出研究成果之一)。它本身并不深奥,今天我们就来使用PHP编写程序来输出一个4行3列的杨辉三角。
首先我们来了解一下杨辉三角。
杨辉三角是牛顿二项式系数在三角形中的一种几何排列,它的每一个数都等于上方两个数之和。
从上图我们可以轻松的找出规律:
-
每一行前后元素都是1
-
第几行就有几个元素
-
从第三行开始,除了每行的首尾,其余的每一个元素都是上面的两个相邻的元素之和(上一行同位置的数+上一行同位置的前一位数之和)
找到规律了,我们就可以设置算法,然后根据算法设置程序(本文使用数组+双重for循环嵌套的方式来实现杨辉三角。对for循环不了解的,可以查看《PHP循环学习三:如何使用for循环语句遍历数组》)
算法分析:有一个i行j列数组(j小于等于i)
-
双重for循环,第一层循环,遍历数组的行i;第二层循环,遍历数组的列j。且数组的列j值要小于等于数组的行i值
-
第二层循环体中使用if语句进行判断,当
j=1
或者i=j
时,值为$array[i][j] = 1
; -
而其他时候,
$array[i][j]
=$array[ i-1 ][ j-1 ]
+$array[ i-1 ][ j ]
我们来看看实现功能的PHP程序代码:
<?php function yh_put($max) { $array = []; // 循环列数 for($i = 1; $i <= $max; $i++) { // 循环行数 for( $j=1; $j <= $i; $j++) { // 每行的第一个和最后一个都是1 if( $j == 1 || $j == $i ) { echo $array[$i][$j] = 1; } else { // 上一行同位置的数 + 上一行同位置的前一位数之和 echo $array[$i][$j] = $array[ $i-1 ][ $j-1 ]+$array[ $i-1 ][ $j ]; } echo " "; } echo "<br>"; } unset($array); } yh_put(10);
输出结果为:
好了就说到这里了,有其他想知道的,可以点击这个哦。→ →PHP函数之array数组函数视频讲解,快来学习吧!
以上就是如何通过PHP程序获取一个10行的杨辉三角的详细内容,更多请关注亿码酷站其它相关文章!
如何通过PHP程序获取一个10行的杨辉三角
—–文章转载自PHP中文网如有侵权请联系ymkuzhan@126.com删除
转载请注明来源:如何通过PHP程序获取一个10行的杨辉三角
本文永久链接地址:https://www.ymkuzhan.com/37865.html
本文永久链接地址:https://www.ymkuzhan.com/37865.html
下载声明:
本站资源如无特殊说明默认解压密码为www.ymkuzhan.com建议使用WinRAR解压; 本站资源来源于用户分享、互换、购买以及网络收集等渠道,本站不提供任何技术服务及有偿服务,资源仅提供给大家学习研究请勿作它用。 赞助本站仅为维持服务器日常运行并非购买程序及源码费用因此不提供任何技术支持,如果你喜欢该程序,请购买正版! 版权声明:
下载本站资源学习研究的默认同意本站【版权声明】若本站提供的资源侵犯到你的权益,请提交版权证明文件至邮箱ymkuzhan#126.com(将#替换为@)站长将会在三个工作日内为您删除。 免责声明:
您好,本站所有资源(包括但不限于:源码、素材、工具、字体、图像、模板等)均为用户分享、互换、购买以及网络收集而来,并未取得原始权利人授权,因此禁止一切商用行为,仅可用于个人研究学习使用。请务必于下载后24小时内彻底删除,一切因下载人使用所引起的法律相关责任,包括但不限于:侵权,索赔,法律责任,刑事责任等相关责任,全部由下载人/使用人,全部承担。以上说明,一经发布视为您已全部阅读,理解、同意以上内容,如对以上内容持有异议,请勿下载,谢谢配合!支持正版,人人有责,如不慎对您的合法权益构成侵犯,请联系我们对相应内容进行删除,谢谢!