在 php 中用循环函数输出一个杨辉三角
时间: 2024-09-24 10:12:24 浏览: 45
在 PHP 中,可以使用嵌套循环来生成杨辉三角。杨辉三角是一个数学术题,每一行都是由前一行数字相加得到的,最开始的两行通常是 1。下面是一个简单的 PHP 函数,用于打印杨辉三角:
```php
function printPascalTriangle($n) {
for ($i = 0; $i < $n; $i++) {
// 每一行的开头和结尾都是 1
echo "1 ";
// 内部的数字计算:当前行的元素等于上一行的所有元素之和减去最左边的一个元素
for ($j = 1; $j <= $i; $j++) {
echo ($i - $j + 1) . " ";
}
// 行结束换行
echo "\n";
}
}
// 调用函数并传入想要的层数(例如5)
printPascalTriangle(5);
```
当你运行这个函数并传递一个整数如 `5` 作为参数,它将打印出前5行的杨辉三角。
相关问题
在python中用递归函数写出杨辉三角简单点的代码
在Python中,我们可以使用递归函数来生成杨辉三角。杨辉三角是一个数列,每个数字是它上面两个数字之和,通常以一个金字塔形状排列。下面是一个简单的递归函数实现:
```python
def pascal_triangle(n):
# 杨辉三角的基本情况
if n == 0:
return [[]]
elif n == 1:
return [[1]]
# 递归生成每一层的元素
last_row = pascal_triangle(n - 1)
current_row = [1] + [last_row[i-1][i-1] + last_row[i-1][i] for i in range(1, len(last_row))] + [1]
# 返回当前行并添加到结果列表
result = last_row + [current_row]
return result
# 示例:打印前5行的杨辉三角
for row in pascal_triangle(5):
print(row)
```
运行这个代码会输出前5行的杨辉三角。
C语言中用自定义函数打印杨辉三角
好的,下面是用C语言编写的自定义函数来打印杨辉三角的代码:
```c
#include <stdio.h>
void yanghui_triangle(int n) {
int triangle[n][n];
for (int i = 0; i < n; i++) {
for (int j = 0; j <= i; j++) {
if (j == 0 || j == i) {
triangle[i][j] = 1;
} else {
triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];
}
printf("%d ", triangle[i][j]);
}
printf("\n");
}
}
// 调用函数,打印10层杨辉三角
int main() {
yanghui_triangle(10);
return 0;
}
```
运行结果如下:
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
```
希望这个C语言的自定义函数可以帮助到您!
阅读全文