溫馨提示×

怎么用python打印三角數(shù)字

小億
83
2024-09-25 23:18:01
欄目: 編程語言

三角數(shù)字,也被稱為帕斯卡三角形(Pascal’s Triangle),每一行的數(shù)字代表二項式展開的系數(shù)。在Python中,你可以使用以下幾種方法來打印帕斯卡三角形:

方法一:遞歸法

使用遞歸函數(shù)來生成帕斯卡三角形。

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("請輸入帕斯卡三角形的行數(shù):"))
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("請輸入帕斯卡三角形的行數(shù):"))
triangle = generate_pascals_triangle(n)
print_pascals_triangle(triangle)

這兩種方法都可以生成指定行數(shù)的帕斯卡三角形,并使用print_pascals_triangle函數(shù)以格式化的方式打印出來。

0