三角数字,也被称为帕斯卡三角形(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
函数以格式化的方式打印出来。