#1 2011-03-17 20:36:50

OskarF

Użytkownik

Zarejestrowany: 2011-02-03
Posty: 38
Punktów :   

4.2

Napisz funkcje, która zwraca wartość n-tego wyrazu ciągu Fibonacciego. Funkcja
powinna być napisana w dwóch wersjach: iteracyjnej i rekurencyjnej.
Przykład deklaracji funkcji:
unsigned fib(unsigned n);
unsigned fibRekurencyjna(unsigned n);






#include <iostream>

using namespace std;

unsigned fib(unsigned n);
unsigned fibRekurencyjna(unsigned n);

int main()
{
    unsigned liczba;
    cout<<"Witaj w programie zwracajacym wartosc wybranego wyrazu ciagu Fibonacciego."<<endl;
    cout<<"Podaj dowolny wyraz ciagu, ktory ma zostac zwrocony."<<endl;
    cin>>liczba;

    cout<<"Wartosc dla danego wyrazu wynosi \(iteracyjnie\): "<<fib(liczba)<<endl;
    cout<<"a \(rekurencyjnie\) wynosi:"<<fibRekurencyjna(liczba)<<endl;

    cin.get();
    return 0;
}

unsigned fib(unsigned n)
{
    unsigned a=0, b=1;
    if(0==n) return a;
    for(unsigned i=1;i<n;i++)
    {
        b+=a;
        a=b-a;
    }
    return b;
}

unsigned fibRekurencyjna(unsigned n)
{
    if(0==n) return 0;
    if(1==n) return 1;
    return fibRekurencyjna(n-1)+fibRekurencyjna(n-2);
}

Offline

 

Stopka forum

RSS
Powered by PunBB
© Copyright 2002–2008 PunBB
Polityka cookies - Wersja Lo-Fi


Darmowe Forum | Ciekawe Fora | Darmowe Fora
more http://www.informacjepoznan.pl/ Ciechocinek restauracje