杨辉三角python语言程序
时间: 2023-12-17 11:03:52 浏览: 35
以下是一个简单的 Python 代码,用于生成杨辉三角:
```python
rows = int(input("请输入行数:"))
# 初始化二维列表
triangle = []
for i in range(rows):
triangle.append([1]*(i+1))
# 生成杨辉三角
for i in range(2, rows):
for j in range(1, i):
triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j]
# 输出杨辉三角
for row in triangle:
print(" "*(rows-len(row)), end="")
for num in row:
print("{0:6d}".format(num), end="")
print()
```
运行程序后,用户需要输入要生成的行数。程序会生成相应行数的杨辉三角,并将其输出到屏幕上。
例如,如果用户输入 `5`,程序将输出以下内容:
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
```
相关问题
编写一个杨辉三角Python程序
下面是一个简单的 Python 程序,用于生成杨辉三角:
```python
def generate_pascal_triangle(n):
triangle = []
for i in range(n):
row = [1]
if i > 0:
last_row = triangle[-1]
for j in range(len(last_row) - 1):
row.append(last_row[j] + last_row[j+1])
row.append(1)
triangle.append(row)
return triangle
n = int(input("请输入要生成的杨辉三角行数:"))
triangle = generate_pascal_triangle(n)
for row in triangle:
print(row)
```
运行程序后,它将提示您输入要生成的行数。然后它将使用 `generate_pascal_triangle()` 函数来生成杨辉三角,并将每一行打印到控制台上。
例如,如果您输入 `6`,程序将生成以下杨辉三角:
```
[1]
[1, 1]
[1, 2, 1]
[1, 3, 3, 1]
[1, 4, 6, 4, 1]
[1, 5, 10, 10, 5, 1]
```
杨辉三角 Python
杨辉三角是一个二维的数字三角形,其中每个数字都等于它上方两个数字之和。以下是一个用 Python 实现的杨辉三角:
```python
def yanghui(n):
res = []
for i in range(n):
row = [1] * (i + 1)
for j in range(1, i):
row[j] = res[i - 1][j - 1] + res[i - 1][j]
res.append(row)
return res
# 测试
print(yanghui(5))
```
输出结果:
```
[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
```
其中,`n` 表示杨辉三角的行数,`res` 是一个二维数组,用于存储杨辉三角。首先创建一个一维数组 `row`,将其初始化为长度为 `i+1`,并将所有元素赋值为 `1`,然后遍历该数组,从第二个元素到倒数第二个元素,将其赋值为上一行对应位置的两个元素之和,并将该行添加到 `res` 中。最后返回 `res` 即可。
阅读全文