0255 - Termen n din sirul Fibonacci: Diferență între versiuni

De la Universitas MediaWiki
(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...)
 
 
Linia 2: Linia 2:


Se dă un număr natural n. Să se afişeze termenul n al şirului lui Fibonacci.  
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.
*Se consideră şirul Fibonacci, definit astfel: <math> f_1=0, f_2=1, f_n=f_{n-1}+f_{n-2}, pt. n>=2 </math>.


== Date de intrare ==  
== Date de intrare ==  

Versiunea curentă din 6 ianuarie 2023 14:14

Cerință

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

  • Se consideră şirul Fibonacci, definit astfel: .

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)