A teraz rzecz o rozmnażaniu królików i złotej liczbie... Fibonacci i jego ciąg liczbowy.
Ciąg Fibonacciego to ciąg liczb którego kolejne elementy uzyskujemy sumując dwa poprzednie elementy (ujmując temat w dużym uproszczeniu).
Pierwsze dwie liczby tego ciągu to: 0, 1. Aby uzyskać kolejną liczbę należy wykonać obliczenie 0+1=1, więc trzecim elementem jest liczba 1 (ciąg 0, 1, 1) aby uzyskać wartość kolejnego elementu sumujemy 1+1=2 (0, 1, 1, 2), kolejny element to 1+2=3 (0,1,1,2,3) itd.
Pierwszych 10 elementów ciągu to: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34.

Napisz program który wyliczy i wyświetli na ekranie 30 początkowych elementów ciągu Fibonacciego (liczby mają być oddzielone przecinkami).

2

Odpowiedzi

2009-12-01T18:16:40+01:00
Nie ma tego na żadnej stronie typu google czy coś w tym stylu ??
2009-12-01T20:02:20+01:00
1.Wszystko da sie znaleźć w internecie, ale nie każdy wyjaśni co i jak.
2. To jest serwis, żeby pomagać ludziom rozwiązywać zadania, a nie pisać, żeby sam szukał.

Napisałem program dla C++ i wygląda tak:
#include <cstdlib>
#include <iostream>

using namespace std;

int liczbaf (int nr) // deklaracja funkcji liczbaf = wartość liczby, (int nr) - numer argumentu
{
switch(nr) // warunki dla liczb
{
case 1:
return 0; //
case 2:
return 1;
default:
return liczbaf(nr - 2)+ liczbaf (nr - 1); // wzor na liczby fibonacciego - liczba fibanocciego argumentu x jest równa sumie wartości argumentów x-2 i x-1 - prosta rekurencja
}
}

int main(int argc, char *argv[])
{
for (int i=1; i <= 30; i++ ) // petla wypisująca 30 wyrazow
{
cout << liczbaf(i) << ", "; // wypisywanie wartości liczby o argumentach "i" z funkcji
}
cout << endl;
system("PAUSE"); // dowolny klawisz i koniec programu
return EXIT_SUCCESS;
}

Teraz coś od siebie:
Program używa funkcji , którą można porównać z funkcją liniową, dla każdego argumentu nr oblicza odpowiednią wartość liczbaf.