Skip to content

Instantly share code, notes, and snippets.

@tzach
Created August 18, 2015 09:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tzach/9e363dc08261bd131eb6 to your computer and use it in GitHub Desktop.
Save tzach/9e363dc08261bd131eb6 to your computer and use it in GitHub Desktop.
# Even Fibonacci numbers
# https://projecteuler.net/problem=2
# 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.
(defn fib
([] (fib 1))
([a] (fib 1 a))
([a b]
(cons a (lazy-seq (fib b (+ a b))))))
(->> (fib) (take-while #(< % 4000000)) (filter even?) (apply +))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment