My Haskell Experiment with Project Euler – 2

Even Fibonacci numbers

Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:

1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...

By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.

mfib :: Int -> Integer
mfib = (map fib [0 ..] !!)
  where fib 0 = 0
        fib 1 = 1
        fib n = mfib (n-2) + mfib (n-1)


sum [ y | x <- [1..1000], let y = mfib(x), y < 4000000, y `mod` 2  == 0 ]

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s