Closed. This question is off-topic. It is not currently accepting answers. Learn more
想改进这个问题吗?Update the question所以堆栈溢出的值小于aa>。
>
这是我的密码。我不知道如何把我所有的价值观都输入
公式。我环顾四周,大多数公式都是n-1和
n-2我有A,F1,F2和N-1。

a = (int(input("Value of a: ")))

最佳答案

大多数公式只有n-1和n-2。我有A,F1,F2和N-1。
“正常”斐波那契数列以您拥有的:F(1)F(2)和递归规则开始,以生成n-th数:F(N) = F(N-1) + F(N-2)。在您的例子中,唯一的变化是递归规则被因子a, bF(N) = a*F(N-1) + b*F(N-2)扩充。
您的行不反映return (a*1*(n-1)) + (b*1*(n-2))a*F(n-1) + b*F(n-2))。
注意a times (n-1)th element plus b times (n-2)th element(n-1)不是因素,而是指标!
如果(n-2)F(1) == 1,则F(2) == 1=A*1+B*1=A+B=3。此外,您应该将整个序列输出到第n个数字,而不仅仅是一个数字。
下面的解决方案使用一个生成器函数和规范Python Fibonacci赋值的变体F(3) = a*F(2) + b*F(1)输出是第一个x, y = y, x + y元素的列表:

def fib(a, b):
    x, y = 1, 1
    while 1:  # this will produce fibonacci-like sequence ad infinitum
        yield x
        x, y = y, b*x + a*y  # here is the variation using a, b

def fib_square(a, b, n):
    fib_gen = fib(a, b)
    return [next(fib_gen) for _ in xrange(n)]
    # print ', '.join([str(next(fib_gen)) for _ in xrange(n)])

> fib_square(1, 2, 8)
[1, 1, 3, 5, 11, 21, 43, 85]
# 1, 1, 3, 5, 11, 21, 43, 85

关于python - 输入斐波那契数列的a,b和n ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37378666/

10-12 19:34