Python 3.x n次斐波那契数

Python 3.x n次斐波那契数,python-3.x,Python 3.x,我无法只打印第n个斐波那契数。 在我的代码中,当用户说要打印第n个项时,它会打印第n个项的序列,但我只想得到第n个项的输出 例如 如果我说num=4 输出应为2 请引导 代码如下: N= int(input("How many terms? ")) N1 = 0 N2 = 1 sum = 2 if N <= 0: print("Plese enter a positive integer") elif N == 1: print("Fibonacci sequence:

我无法只打印第n个斐波那契数。 在我的代码中,当用户说要打印第n个项时,它会打印第n个项的序列,但我只想得到第n个项的输出 例如 如果我说num=4 输出应为2

请引导

代码如下:

N= int(input("How many terms? "))


N1 = 0
N2 = 1
sum = 2


if N <= 0:
   print("Plese enter a positive integer")
elif N == 1:
   print("Fibonacci sequence:")
   print(N1)
else:
   print("Fibonacci sequence:")
   print(N1,",",N2,end=' , ')
   while sum < N:
       Nth = N1 + N2
       print(Nth,end=' , ')

       N1 = N2
       N2 = Nth
       sum += 1
N=int(输入(“多少个术语?”)
N1=0
N2=1
总和=2

如果N则打印stmt应在循环之外

N= int(input("How many terms? "))


N1 = 0
N2 = 1
sum = 2


if N <= 0:
   print("Plese enter a positive integer")
elif N == 1:
   print("Fibonacci sequence:")
   print(N1)
else:
   print("Fibonacci sequence:")
   print(N1,",",N2,end=' , ')
   while sum < N:
       Nth = N1 + N2

       N1 = N2
       N2 = Nth
       sum += 1
   print(Nth,end=' , ')
N=int(输入(“多少个术语?”)
N1=0
N2=1
总和=2
如果N更简单的代码


只要调用fibonacci传递第n个项作为参数。

要获得该输出,只需将n的值减少1,然后进行所有计算。 例如:

def fib(n):
    n = n-1
    a, b = 0, 1
    count = 1
    while count <= abs(n):
        next = a + b
        a = b
        b = next
        count += 1
    return a 
def fib(n):
n=n-1
a、 b=0,1
计数=1
而计数
def fib(n):
    n = n-1
    a, b = 0, 1
    count = 1
    while count <= abs(n):
        next = a + b
        a = b
        b = next
        count += 1
    return a