对于刚学PHP的新手来讲,用php写杨辉三角形无疑是非常经典的一道练习题,对于逻辑的考验还是相当到位的。
杨辉三角是二项式系数的一种写法,由于排列形状类似于三角形,被称为杨辉三角。杨辉三角以正整数构成,数字左右对称,每行由1开始逐渐变大,然后变小,回到1;杨辉三角的每一个数是它的左上方和右上方的数的和,我们可以将其理解为一个二维数组,通过两次循环来输出数据。
事例代码如下:
$colors = [ 1 => '#FF0000', // 红色 2 => '#00FF00', // 绿色 3 => '#0000FF', // 蓝色 4 => '#FFFF00', // 黄色 5 => '#FF00FF', // 紫色 6 => '#00FFFF', // 青色 7 => '#C0C0C0', // 银灰色 8 => '#800080', // 紫色 9 => '#FFA500' // 橙色 ]; echo '<table style="border:0;font-size:16pt;font-weight:bold;text-align:center;">'; $row = 9;//行数 $arr = array(); for($i=1;$i<=$row;$i++){ $arr[$i][0] = 1; // 每行的第一个数字总是1 for ($j = 1; $j < $i; $j++) { $arr[$i][$j] = $arr[$i - 1][$j - 1] + $arr[$i - 1][$j]; } } foreach($arr as $k=>$v){ echo '<tr>'; foreach($v as $n){ echo '<td style="background-color: ' . $colors[$k] . '; padding:5px 10px;">'.$n.'</td>'; } echo '</tr>'; } echo '</table>';
效果图
目前有 0 条评论