斐波那契数列是一个经典的数学问题,可以使用递归或循环的方式来编写Python程序来生成斐波那契数列,并在金字塔中显示级数。
def fibonacci(n):
if n <= 0:
return []
elif n == 1:
return [0]
elif n == 2:
return [0, 1]
else:
fib_list = [0, 1]
for i in range(2, n):
fib_list.append(fib_list[i-1] + fib_list[i-2])
return fib_list
def print_fibonacci_pyramid(n):
fib_list = fibonacci(n)
max_length = len(str(fib_list[-1]))
for i in range(n):
row = ' '.join(str(num).rjust(max_length) for num in fib_list[:i+1])
print(row.center(max_length*n))
n = int(input("请输入斐波那契数列的级数:"))
print_fibonacci_pyramid(n)
这个程序首先定义了一个递归函数fibonacci(n)
,用于生成斐波那契数列。然后定义了一个函数print_fibonacci_pyramid(n)
,用于在金字塔中显示斐波那契数列。最后,通过用户输入的级数,调用print_fibonacci_pyramid(n)
函数来显示金字塔中的斐波那契数列。
def fibonacci(n):
if n <= 0:
return []
elif n == 1:
return [0]
elif n == 2:
return [0, 1]
else:
fib_list = [0, 1]
for i in range(2, n):
fib_list.append(fib_list[i-1] + fib_list[i-2])
return fib_list
def print_fibonacci_pyramid(n):
fib_list = fibonacci(n)
max_length = len(str(fib_list[-1]))
for i in range(n):
row = ' '.join(str(num).rjust(max_length) for num in fib_list[:i+1])
print(row.center(max_length*n))
n = int(input("请输入斐波那契数列的级数:"))
print_fibonacci_pyramid(n)
这个程序与前面的递归方式类似,只是使用循环的方式生成斐波那契数列。同样,通过用户输入的级数,调用print_fibonacci_pyramid(n)
函数来显示金字塔中的斐波那契数列。
这个程序的优势是简单易懂,使用了递归或循环的方式生成斐波那契数列,并在金字塔中显示级数。它可以用于教学、演示或娱乐等场景。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云