Informatică, întrebare adresată de mvrabie128, 8 ani în urmă

IN C++ , numai cu WHILE SI CU IF , Fibonacci 506
Se dă un număr n. Să se afle al n-lea termen al șirului Fibonacci.

Fibonacci:
a fost un matematician considerat drept "cel mai talentat matematician din Occidentul Evului Mediu".
a introdus aritmetica în sistemul comercial european
a introdus ideea de operații cu numere fracționare, procedeul de aducere la același numitor, problemele de amestecuri, numerele iraționale și relațiile de recurență.
a aproximat valoarea lui π la 864/275.
Date de intrare
Se citește de la tastatură un număr natural n.

Date de ieșire
Se va afișa pe ecran al n-lea termen al șirului Fibonacci.

Observații
În șirul de numere al lui Fibonacci, fiecare număr reprezintă suma celor două numere anterioare, cu excepția primelor 2 valori, care sunt 1. Astfel, șirul începe cu 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, etc.
Restricții și precizări
1 ≤ n ≤ 40
EX :
1 .............. 1
7 ......................13

Răspunsuri la întrebare

Răspuns de simulink
1

Răspuns:

#include <iostream>

using namespace std;

int main()

{ int n, n1,n2,k;

cin>>n;    

n1=n2=1;  

if (n==1||n==2) cout<<1;

else{

k=2;

while (k<n)

{

   int aux;

   aux=n1+n2;

   n1=n2;

   n2=aux;

   k++;

}

cout<<n2;

}

return 0;

}

Explicație:

Pentru a calcula un termen al sirului lui Fibonacci este nevoie de cei doi termeni anteriori lui. I-am retinut in variabilele n1 si n2.  Restul intelegi tu. :)


mvrabie128: MULTUMESC MULT !
Alte întrebări interesante