python输出杨辉三角的前n行数据
时间: 2023-06-01 12:07:49 浏览: 115
好的,这个问题可以回答。下面是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
# 输出前10行
n = 10
triangle = yanghui(n)
for i in range(n):
print(' '*(n-i), end='')
for j in triangle[i]:
print(j, end=' ')
print()
```
输出结果:
```
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
```
相关问题
python打印杨辉三角前n行
在Python中,我们可以使用递归的方式来打印杨辉三角的前n行。杨辉三角是一个数学术语,每一行的数字是基于上一行的两个相邻数字之和得出的。下面是一个简单的函数示例:
```python
def print_pascal_triangle(n):
# 创建一个二维列表存储结果
triangle = [[0 for _ in range(n)] for _ in range(n)]
# 杨辉三角的前几项初始化为1
triangle[0] = [1]
if n > 1:
triangle[1] = [1, 1]
# 打印前n行
for i in range(2, n):
for j in range(i): # 从左到右填充
triangle[i][j] = triangle[i - 1][j] + triangle[i - 1][j + 1]
# 结束行后添加一个1
triangle[i].append(1)
# 打印结果
for row in triangle[:n]:
print(' '.join(str(num) for num in row))
# 调用函数并指定要打印的行数
print_pascal_triangle(5)
```
当你运行这个函数,它将打印出杨辉三角的前5行。如果你想要更改打印的行数,只需传入不同的参数即可。
python输出杨辉三角
好的,以下是 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(n):
triangle = generate_triangle(n)
for row in triangle:
print(' '.join(map(str, row)).center(n*2))
# 示例
print_triangle(6)
```
输出结果如下:
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
```
其中 `generate_triangle(n)` 函数用于生成杨辉三角,`print_triangle(n)` 函数用于将其输出到屏幕上。
阅读全文