[Haskell-cafe] Fibonacci numbers generator in Haskell

Doug Quale quale1 at charter.net
Fri Jun 16 10:01:21 EDT 2006


Mathew Mills <mathewmills at mac.com> writes:

> Is there anything that can be done (easily) to reduce the rounding errors?

The hint that I gave before is one easy way.

> fib :: Integer -> Integer
> fib x = let phi = ( 1 + sqrt 5 ) / 2
>          in truncate( ( 1 / sqrt 5 ) * ( phi ^ x + 0.5) )

You run out of precision eventually.  IEEE Double's give you about 15
decimal digits, so the results become approximate for x > 75.


More information about the Haskell-Cafe mailing list