使用python编程打印出杨辉三角形前10行
时间: 2023-05-22 07:05:30 浏览: 120
以下是python编程打印出杨辉三角形前10行的代码:
```
def 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)
return triangle
for row in yanghui_triangle(10):
print(row)
```
输出结果如下:
```
[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编程打印出杨辉三角形前10行,并且使用递归思想,程序要求运行结果开始要由“以下是杨辉三角前10行”的语句开始python编程打印出杨辉三角形前10行,并且使用递归思想。运行结果开始要由“以下是杨辉三角前10行”的语句开始,并给我代码
以下是杨辉三角前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
下面是使用递归思想实现的 Python 代码:
def pascal_triangle(n):
if n == 1:
return [[1]]
else:
result = pascal_triangle(n-1)
row = [1]
for i in range(1, n-1):
row.append(result[-1][i-1] + result[-1][i])
row.append(1)
result.append(row)
return result
for row in pascal_triangle(10):
print(' '.join([str(num) for num in row]).center(60))
使用python编程打印出杨辉三角形前10行,并且使用递归思想。运行结果开始要由“以下是杨辉三角前10行”的语句开始,并给我代码
以下是杨辉三角前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
这是使用Python递归算法打印前10行杨辉三角的代码:
def print_yang_hui(num_rows):
if num_rows == 0:
return []
elif num_rows == 1:
return [[1]]
else:
last_triangle = print_yang_hui(num_rows - 1)
last_row = last_triangle[-1]
new_row = [1]
for i in range(len(last_row) - 1):
new_row.append(last_row[i] + last_row[i+1])
new_row.append(1)
last_triangle.append(new_row)
return last_triangle
rows = print_yang_hui(10)
for row in rows:
print(' '.join([str(elem) for elem in row]))
阅读全文