<?php
function fibonacci($count, $f1=0, $f2=1) {
if ($count < 1) return 0;
$return = $count >1 ? fibonacci($count -1, $f2, $f1 + $f2) : $f2;
return $return;
}
echo fibonacci(19);
?>
Trzeba uważać żeby nie przesadzić z liczbą. Można dopisać if ($count > 10000) return null;.
Analizować raczej nie trzeba. Jeżeli $count jest większy niż 1 wywołaj funkcję i licz dalej zwróć ostatni wynik.
Można to zrobić w pętli for, ale to wydaje mi się bardziej proste i przejrzyste i pozwala myśleć obiektowo.
Powodzenia.
Postaram się przekazać swoje doświadczenia z PHP, oraz innych dziwnych rzeczach, typu MySQL, DB2. Czyli to co umiem. Blogoczytelników o słabych nerwach proszę o nieczytanie tego blogu. Dlaczego? Jeszcze nie wiem. W razie pytań z dziedziny PHP proszę pytać, jest cień możliwości że akurat to wiem. ;)
wtorek, 7 lipca 2015
Funkcja obliczające ciąg Fibonacciego
Witam.
Natchniony jakimś blogiem przedstawiam prostą punkcje obliczający ciąg Fibonacciego.
Subskrybuj:
Komentarze (Atom)