📜  程序打印斐波那契三角(1)

📅  最后修改于: 2023-12-03 15:27:21.504000             🧑  作者: Mango

程序打印斐波那契三角

介绍

斐波那契三角是一个三角形,其第n行由斐波那契数列中前n个数字组成。即第n行有n个数字,其由斐波那契数列的前n个数字组成,第n行的数字按照从小到大的顺序排列,如下所示:

1 
1 2 
1 2 3 
1 2 3 5 
1 2 3 5 8 
1 2 3 5 8 13 
1 2 3 5 8 13 21 
1 2 3 5 8 13 21 34 
...

本文将介绍如何使用 Python 编写一个程序来打印斐波那契三角。

实现

使用 Python 编写程序打印斐波那契三角的方法如下:

n=int(input("请输入要打印的行数:"))
# 定义前两个数字
a, b = 1, 2
# 打印第一行
print(a)
# 打印第二行
print(a, b)
for i in range(3, n+1):
    # 生成当前行
    fib = [a+b for a, b in zip([0]+fib, fib+[0])]
    # 打印当前行
    print(*fib, sep=" ")

代码分析:

  1. 首先让用户输入要打印的行数。
  2. 定义前两个数字 a 和 b 为 1 和 2。
  3. 打印第一行,即只有一个数字 a。
  4. 打印第二行,即两个数字 a 和 b。
  5. 循环从第三行开始打印到第 n 行,使用列表推导式生成当前行的每一个数字,然后打印该行。

值得注意的是,列表推导式中使用了 zip 和 range 函数,其中 zip 函数可以将两个列表中对应位置的元素打包成一个个元组,然后返回由这些元组组成的列表,而 range 函数则用于生成 1 至 n 的整数序列,从而得到每一行的数字。

结论

使用本文介绍的代码可以轻松地打印出斐波那契三角,提供另一种实现思路。