用Python写一个杨辉三角函数
时间: 2024-03-28 09:16:27 浏览: 66
以下是使用Python编写的杨辉三角函数:
```python
def yanghui(n):
triangle = []
for i in range(n):
row = [1] * (i + 1)
for j in range(1, i):
row[j] = triangle[i-1][j-1] + triangle[i-1][j]
triangle.append(row)
return triangle
# 测试
result = yanghui(5)
for row in result:
print(row)
```
输出结果为:
```
[1]
[1, 1]
[1, 2, 1]
[1, 3, 3, 1]
[1, 4, 6, 4, 1]
```
其中,`n`为杨辉三角的行数,`triangle`为存储杨辉三角的列表,`row`为当前行的列表,初始化为全是1。在遍历每一行的时候,使用循环计算当前位置的值,将其存储到`row`中,最后将`row`添加到`triangle`中。
相关问题
用python写一个杨辉三角的函数
可以的,以下是用 Python 写一个杨辉三角的函数的代码:
```python
def generate_pascal_triangle(num_rows):
triangle = []
for i in range(num_rows):
row = [1] * (i + 1)
for j in range(1, i):
row[j] = triangle[i - 1][j - 1] + triangle[i - 1][j]
triangle.append(row)
return triangle
```
这个函数使用了一个二重循环,外层循环从第一行到第 num_rows 行,内层循环用来填充每一行的数字。我们通过访问上一行的数字来计算当前行的数字,这样就得到了一个杨辉三角。如果你想看到更多关于这个算法的代码实现,可以在 CSDN 上找到相关文章。
用python写一个杨辉三角
下面是一个使用Python语言编写杨辉三角的示例代码:
```python
# 定义函数,num为行数
def pascal_triangle(num):
# 创建一个二维数组,用于存储杨辉三角
triangle = [[1] * (i + 1) for i in range(num)]
for i in range(num):
for j in range(1, i):
triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j]
return triangle
# 测试代码
if __name__ == '__main__':
triangle = pascal_triangle(10)
for row in triangle:
print(row)
```
输出结果:
```
[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]
```
阅读全文