使用递归函数输出十行杨辉三角
时间: 2024-10-19 21:14:40 浏览: 14
1_杨辉三角_递归斐波那契数列_源码
杨辉三角是一个经典的数学问题,它是一个由数字构成的三角形,每一行的开头和结尾都是1,中间的每个数是其上一行相邻两个数的和。我们可以使用递归函数来生成这个三角形。下面是一个简单的Python示例:
```python
def pascal_triangle(n):
# 边界条件:当n等于0或1时,返回空列表或只有一个元素[1]
if n == 0:
return [[]]
elif n == 1:
return [[1]]
# 递归情况:构建当前行,并将其添加到前一行的基础上
row = [1] # 当前行的第一个元素始终为1
prev_row = pascal_triangle(n - 1) # 上一行
for i in range(len(prev_row) - 1): # 遍历上一行的元素
row.append(prev_row[i] + prev_row[i + 1]) # 当前行的下一个元素是上两行相应位置相加
row.append(1) # 当前行的最后一个元素始终为1
# 返回当前行并合并所有行
return [row] + prev_row
# 输出前10行杨辉三角
for i in range(10):
print(pascal_triangle(i))
阅读全文