杨辉三角python代码
杨辉三角是一个数学上的三角形,其中的每个数字是上方两个数字的和。
pythondef generate_pascals_triangle(num_rows):
triangle = []
for row_num in range(num_rows):
# 初始化每一行的列表
row = [None for _ in range(row_num + 1)]
# 每一行的第一个和最后一个元素都是1
row[0], row[-1] = 1, 1
# 生成中间的数字
for j in range(1, len(row) - 1):
row[j] = triangle[row_num - 1][j - 1] + triangle[row_num - 1][j]
triangle.append(row)
return triangle
def print_pascals_triangle(triangle):
for row in triangle:
print(" ".join(map(str, row)))
# 生成并打印前10行的杨辉三角
num_rows = 10
pascals_triangle = generate_pascals_triangle(num_rows)
print_pascals_triangle(pascals_triangle)
这个代码定义了两个函数,generate_pascals_triangle
用于生成杨辉三角,而 print_pascals_triangle
用于打印生成的三角形。你可以根据需要调整 num_rows
变量的值来生成不同行数的杨辉三角。
generate_pascals_triangle
函数生成杨辉三角。它使用一个二维列表 triangle
来存储每一行的数字。
在每一行的起始和结束位置放置数字 1。
使用循环来计算中间位置的数字,这些数字是上一行中相邻两个数字的和。
将每一行添加到 triangle
中。
print_pascals_triangle
函数用于打印生成的杨辉三角。它使用嵌套的循环遍历每一行并将数字以空格分隔打印出来。