problem z prostym programem w C++

papa8787

Nowicjusz
Dołączył
21 Marzec 2007
Posty
253
Punkty reakcji
0
Mam maly problem z ciagiem Fibonacciego w C++
( To jest taki ciag 1 1 2 3 5 8 13 21 ... - kolejna liczba to jest suma dwoch poprzednich liczb )
Dlaczego na poczatku program dziala bardzo szybko a nagle zaczyna sie zamulac i dziala baaaaaaaaaaardzo wolno?
Oto moj kod:


#include<iostream>
using namespace std;

int fib(int n){

// funkcja fib

if(n==1 || n==2) return 1;

// rekurencja - najprostszy warunek

return fib(n-1)+fib(n-2);

// oddaj wynik suma dwoch kolejnych liczb

};

void main(){
for(int i=1; i<70; i++)
// prosta petla do 70

cout<<" fib("<<i<<") = "<<fib(i)<<endl;
// wyswietlanie wynikow ktore
// dostajemy z funkcji fib
}

Macie pomysl dlaczego to tak sie wlecze ?? A moze macie pomysl na szybszy kod ktory uzywa rekurencji ?? dziekuje za wszelka pomoc
 

papa8787

Nowicjusz
Dołączył
21 Marzec 2007
Posty
253
Punkty reakcji
0
Problem juz rozwiazalem, ale prosze nie zamykac, bo moze sie ten sam problem komus przytrafic :)
 
Do góry