|
|
Line 1: |
Line 1: |
| == 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 == | | {| class="wikitable sortable" |
| | |+ |
| | !Denumire exercițiu |
| | |- |
| | |[[0255 - Termen n din sirul Fibonacci]] |
| | |- |
| | |[[]] |
|
| |
|
| 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 ==
| |
| | |
| <syntaxhighlight lang="python" line>
| |
| 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)
| |
| </syntaxhighlight>
| |