Python如何写杨辉三角形
时间: 2024-04-12 12:25:21 浏览: 163
Python可以使用循环和列表来写杨辉三角形。下面是一个示例代码:
```python
def generate_pascal_triangle(num_rows):
triangle = []
for i in range(num_rows):
row = [1] * (i + 1)
if 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 = 5
pascal_triangle = generate_pascal_triangle(num_rows)
# 打印杨辉三角形
for row in pascal_triangle:
print(row)
```
这段代码中,`generate_pascal_triangle`函数接受一个参数`num_rows`,表示要生成的杨辉三角形的行数。函数使用一个二维列表`triangle`来存储杨辉三角形的每一行。通过两层循环,首先初始化每一行的元素为1,然后根据上一行的元素计算当前行的元素值。最后将每一行添加到`triangle`列表中。
在主程序中,我们调用`generate_pascal_triangle`函数生成了一个5行的杨辉三角形,并使用循环打印出每一行的元素。
相关问题
用Python写杨辉三角形
在Python中,可以使用嵌套循环来生成杨辉三角形。杨辉三角是一个数学术语,每个数字都是它上方两个数字之和,从左上角开始递推形成一个倒置的金字塔形状。下面是一个简单的函数,用于打印杨辉三角:
```python
def print_pascal_triangle(n):
triangle = []
for i in range(n):
row = [0] * (i + 1)
if i == 0 or i == 1:
row[i] = 1
else:
row[0], row[-1] = 1, 1
for j in range(1, len(row) - 1):
row[j] = triangle[i - 1][j - 1] + triangle[i - 1][j]
triangle.append(row)
print(row)
# 调用函数,例如打印5行的杨辉三角
print_pascal_triangle(5)
```
当你运行这个程序时,会看到前5行的杨辉三角形输出。如果你想要改变`n`的值,就可以生成不同大小的杨辉三角。
用python写杨辉三角形
以下是用Python写的杨辉三角形代码:
```python
def pascal_triangle(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
def print_triangle(triangle):
for row in triangle:
print(" ".join(str(x) for x in row))
n = int(input("请输入杨辉三角形的行数:"))
triangle = pascal_triangle(n)
print_triangle(triangle)
```
代码说明:
- `pascal_triangle` 函数用于生成杨辉三角形,接受一个整数参数 n 表示行数,返回一个二维列表,表示杨辉三角形。
- `print_triangle` 函数用于打印杨辉三角形,接受一个二维列表参数 triangle,将其打印出来。
- 主程序中,首先读取用户输入的行数 n,然后调用 pascal_triangle 函数生成杨辉三角形,最后调用 print_triangle 函数将其打印出来。
阅读全文
相关推荐












