杨辉三角python代码

杨辉三角是一个数学上的三角形,其中的每个数字是上方两个数字的和。

python
def 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 函数用于打印生成的杨辉三角。它使用嵌套的循环遍历每一行并将数字以空格分隔打印出来。

标签