ForLiberty 发表于 2019-11-3 23:19:48

python斐波那契数列求和,这样比递归快多了。

本帖最后由 ForLiberty 于 2019-11-3 23:24 编辑

# -*- coding: UTF-8 -*-
def fbnq(x):
    flist =
    n = 1
    while n <= x :
      n = len(flist) - 1
      fnum = flist
      fnum= fnum + flist
      flist.append(fnum)
    return flist

inp = input("下面将列出的斐波那契数列并计算总和,你需要多少个数字?请输入:")
m = int(inp)
mylist = fbnq(m)
print(mylist)
mysum = sum(fbnq(m))
print(mysum)

请大家看看,如此妥否?

冬雪雪冬 发表于 2019-11-3 23:24:48

下面将列出的斐波那契数列并计算总和,你需要多少个数字?请输入:1

7

ForLiberty 发表于 2019-11-3 23:29:16

哦,那应如何修改?版主有何高见?

冬雪雪冬 发表于 2019-11-4 00:08:57

ForLiberty 发表于 2019-11-3 23:29
哦,那应如何修改?版主有何高见?

def fbnq(x):
    flist =
    if x <= 0:
      return -1
    if x == 1:
      return flist[:1]
    whilex - 2 > 0 :
      flist.append(flist[-2] + flist[-1])
      x -= 1
    return flist

ForLiberty 发表于 2019-11-4 00:48:03

果然高见,谢谢版主!
页: [1]
查看完整版本: python斐波那契数列求和,这样比递归快多了。