自定义函数打印杨辉三角形
时间: 2023-08-29 12:07:25 浏览: 60
好的,下面是实现杨辉三角形的自定义函数:
```python
def print_yanghui_triangle(n):
triangle = [[1]]
for i in range(1, n):
row = [1]
for j in range(1, i):
row.append(triangle[i-1][j-1] + triangle[i-1][j])
row.append(1)
triangle.append(row)
max_width = len(str(triangle[-1][-1])) * 2
for row in triangle:
print(' '.join(str(num).center(max_width) for num in row))
```
这个函数接收一个整数 n 作为参数,打印 n 行杨辉三角形。例如,如果 n=5,那么输出将会是以下内容:
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
```
希望这个函数能够满足您的需求。
相关问题
python自定义函数打印杨辉三角形
好的,下面是一个简单的Python函数,用于打印n行的杨辉三角形:
```python
def print_pascal_triangle(n):
# 初始化第一行
row = [1]
# 打印前n行
for i in range(n):
# 打印当前行
print(row)
# 计算下一行
next_row = [1]
for j in range(len(row) - 1):
next_row.append(row[j] + row[j+1])
next_row.append(1)
row = next_row
```
你只需要调用该函数并传入所需的行数即可打印出相应的杨辉三角形,例如:
```python
print_pascal_triangle(5)
```
输出:
```
[1]
[1, 1]
[1, 2, 1]
[1, 3, 3, 1]
[1, 4, 6, 4, 1]
```
用自定义函数打印杨辉三角
好的,我可以为您编写一个Python的自定义函数来打印杨辉三角。下面是代码:
```python
def yanghui_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)
for row in triangle:
print(' '.join([str(num) for num in row]).center(n*2))
# 调用函数,打印10层杨辉三角
yanghui_triangle(10)
```
运行结果如下:
```
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
```
希望这个自定义函数可以帮助到您!