python打印杨辉三角的代码
时间: 2023-07-10 21:10:48 浏览: 109
下面是一个打印杨辉三角的 Python 代码示例:
```python
def generate_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(row)
n = 5
triangle = generate_triangle(n)
print_triangle(triangle)
```
这个代码使用了两个函数,`generate_triangle` 用于生成杨辉三角,`print_triangle` 用于打印杨辉三角。
首先生成一个包含前 `n` 行杨辉三角的列表 `triangle`,然后通过循环遍历每一行,打印出每一行的元素。
此外,这个代码还可以扩展,比如:可以把打印杨辉三角的部分改为返回一个包含所有行的字符串,也可以增加异常处理等等。
相关问题
Python打印杨辉三角代码
在 Python 中,打印杨辉三角是一个常见的编程练习,可以使用动态规划的方式来实现。杨辉三角是一个二阶数组,每个数是其上方两个数之和(除了边界)。以下是一个简单的 Python 代码示例,用于打印杨辉三角:
```python
def print_pascal_triangle(n):
triangle = [[0 for _ in range(n)] for _ in range(n)]
for i in range(n):
for j in range(i + 1):
if j == 0 or j == i:
triangle[i][j] = 1
else:
triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j]
print(triangle[i], end=" ")
print() # 换行
# 调用函数,指定三角形的层数(行数)
print_pascal_triangle(5)
```
这个代码首先创建一个 `n` x `n` 的二维列表 `triangle`,然后使用嵌套循环计算每个位置的值并打印。边界条件 (`j == 0` 或 `j == i`) 的处理使得第一行和最后一行的元素都为 1。运行这段代码,你可以看到前五行的杨辉三角。
写一段python打印杨辉三角的代码
以下是Python代码实现杨辉三角的功能:
```python
def yanghui_triangle(n):
# 初始化杨辉三角
triangle = [[1] * (i + 1) for i in range(n)]
# 计算杨辉三角中的每个数字
for i in range(n):
for j in range(1, i):
triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j]
# 打印杨辉三角
for row in triangle:
print(' '.join([str(num) for num in row]))
# 调用函数打印杨辉三角
n = 10
yanghui_triangle(n)
```
输出结果:
```
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
```
阅读全文