0255 - Termen n din sirul Fibonacci

De la Universitas MediaWiki
Versiunea din 30 decembrie 2022 16:29, autor: Heres.Gabriela (discuție | contribuții) (Pagină nouă: == Cerință == Se dă un număr natural n. Să se afişeze termenul n al şirului lui Fibonacci. *Se consideră şirul Fibonacci, definit astfel: f1=0 , f2=1 , fn=fn-1+fn-2 , dacă n>2. == Date de intrare == Programul citește de la tastatură numărul n. == Date de ieșire == Programul afișează pe ecran termenul n al sirului lui Fibonacci. == Restricții și precizări == 1 ≤ n ≤ 500.000.000 == Exemplu == Date de intrare: 5 Date de ieșire: 3 == Rezolvare...)
(dif) ← Versiunea anterioară | Versiunea curentă (dif) | Versiunea următoare → (dif)

Cerință

Se dă un număr natural n. Să se afişeze termenul n al şirului lui Fibonacci.

  • Se consideră şirul Fibonacci, definit astfel: f1=0 , f2=1 , fn=fn-1+fn-2 , dacă n>2.

Date de intrare

Programul citește de la tastatură numărul n.

Date de ieșire

Programul afișează pe ecran termenul n al sirului lui Fibonacci.

Restricții și precizări

1 ≤ n ≤ 500.000.000

Exemplu

Date de intrare: 5 Date de ieșire: 3

Rezolvare

def fibonacci(n):
    fibo1, fibo2 = 0, 1  #initializam primii doi termeni ai sirului lui Fibonacci
    for i in range(3, n+1):
        fibo3 = fibo2 + fibo1
        fibo1,fibo2 = fibo2,fibo3
    print(fibo3)


if __name__ == "__main__":
    n = int(input())
    fibonacci(n)