生成杨辉三角是一个经典的数学问题。Python可以通过使用循环和列表来生成杨辉三角形。下面是使用Python生成杨辉三角形的完整攻略。
import math
首先,我们定义一个函数来生成杨辉三角形。该函数的输入参数是一个整数n,指定三角形中的行数。
在此函数中,我们使用列表来保存每一行的杨辉三角数字。然后,我们使用两个循环来生成每一行的数字。其中,外部循环遍历每一行,而内部循环用于计算每一行中的数字。我们可以使用组合公式C(n, i) = n! / (i! (n-i)!)来计算数字,其中i是数字在行中的位置。最后,将每一行添加到result列表中,并返回结果。
def generate_pascal_triangle(n):
"""
Generate pascal triangle of n rows.
"""
result = []
for row in range(n):
row_result = []
for i in range(row + 1):
element = int(math.factorial(row) / (math.factorial(i) * math.factorial(row - i)))
row_result.append(element)
result.append(row_result)
return result
现在,我们可以通过调用生成函数并传递行数参数来生成杨辉三角形。例如,
n = 5
result = generate_pascal_triangle(n)
print(result)
这将生成一个杨辉三角形的列表,其中包含n行内容。
输入:
n = 5
result = generate_pascal_triangle(n)
输出:
[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
这是一个有5行的杨辉三角。
输入:
n = 3
result = generate_pascal_triangle(n)
输出:
[[1], [1, 1], [1, 2, 1]]
这是一个有3行的杨辉三角。
本文链接:http://task.lmcjl.com/news/14793.html