阅读量:0
三角数字,也被称为帕斯卡三角形(Pascal’s Triangle),每一行的数字代表二项式展开的系数。在Python中,你可以使用以下几种方法来打印帕斯卡三角形:
方法一:递归法
使用递归函数来生成帕斯卡三角形。
def generate_pascals_triangle(n): triangle = [[1]] for i in range(1, n): row = [1] last_row = triangle[-1] for j in range(1, len(last_row) - 1): row.append(last_row[j - 1] + last_row[j]) row.append(1) triangle.append(row) return triangle def print_pascals_triangle(triangle): for row in triangle: print(" ".join(str(num) for num in row).center(len(triangle[-1]) * 4)) n = int(input("请输入帕斯卡三角形的行数:")) triangle = generate_pascals_triangle(n) print_pascals_triangle(triangle)
方法二:迭代法
使用迭代方法生成帕斯卡三角形。
def generate_pascals_triangle(n): if n == 0: return [] if n == 1: return [[1]] triangle = [[1]] for i in range(1, n): row = [1] last_row = triangle[-1] for j in range(1, len(last_row)): row.append(last_row[j - 1] + last_row[j]) row.append(1) triangle.append(row) return triangle def print_pascals_triangle(triangle): for row in triangle: print(" ".join(str(num) for num in row).center(len(triangle[-1]) * 4)) n = int(input("请输入帕斯卡三角形的行数:")) triangle = generate_pascals_triangle(n) print_pascals_triangle(triangle)
这两种方法都可以生成指定行数的帕斯卡三角形,并使用print_pascals_triangle
函数以格式化的方式打印出来。