In de beroemde rij van Fibonacci wordt elk rij-element gegeven door de som van zijn twee voorgangers. Er geldt m.a.w.
$$ F_i = F_{i-1} + F_{i-2} \text{, voor } i \ge 0 $$
Waarin

Deze getallen kunnen zonder iteratie gegeneerd worden, via de uitdrukking:
$$ F_i = \frac{\phi^i - (-\phi)^{-i}}{\sqrt{5}} $$
met
$$ \phi = \frac{1+\sqrt{5}}{2} $$
(de gulden snede).


Schrijf een functie fib() met als enig argument het rangnummer van het gewenste getal in de rij van Fibonacci. Let op: gebruik de gegeven uitdrukking (en GEEN lussen). Je programma zal met niet-gehele argumenten getest worden om dit te verifiëren (in dit laatste geval levert de uitdrukking een mogelijks complex getal op, dat verder geen relatie heeft met de rij van Fibonacci).

Voorbeeld

fib(5) = 5.000000000000001
fib(1) = 1.0
fib(1/3) = (0.33455386114967833+0.32990058280783463j)