Ile kolejnych liczb wygenerować?    

Algorytm iteracyjny kodowany w Perlu

Courtesy of Wikipedia Generuj $n liczb Fibonacciego:
####################################
for ($i=1; $i<=$n; $i++) # metoda iteracyjna
{
     if ($i == 1) # definiuje pierwszy element ciągu
     {
          $fib_pre_previous = 0;
          print "$fib_pre_previous\n";
     }
     elsif ($i == 2) # definiuje drugi element ciągu
     {
          $fib_previous = 1;
          print "$fib_previous\n";
     }
     else # każdy kolejny element ciągu jest sumą dwóch poprzednich
     {
          $fib_sum = $fib_previous + $fib_pre_previous;
          $fib_pre_previous = $fib_previous;
          $fib_previous = $fib_sum;
          print "$fib_sum\n";
     }
}
####################################

Przy pomocy algorytmu iteracyjnego można wygenerować ciąg maksymalnie 1477 liczb Fibonacciego (wliczając 0), gdzie największa liczba ciągu wynosi

1,3069892237634 x 10308   surprised WOW!!!

Warto przy tym zauważyć, że algorytm iteracyjny generujący ciąg Fibonacciego okazuje się najszybszy, najdokładniejszy i najbardziej efektywny w porównaniu z rekurencyjnym lub arytmetycznym.

W moich testach wydajności porównywałem sprawność różnych algorytmów w procesie generowania 1475 liczb Fibonacciego powtarzanym milion razy bez przerw pomiędzy cyklami. Algorytm iteracyjny okazał się 1,5 raza szybszy niż arytmetyczny, co wykazałem porównując całkowity czas zużyty przez każdy z procesów w wielokrotnie powtarzanych cyklach.

Zapraszam zatem do gruntownego testowania algorytmu iteracyjnego! cool