Skip to content

Instantly share code, notes, and snippets.

@tinomen
Created September 25, 2013 02:35
Show Gist options
  • Save tinomen/6694488 to your computer and use it in GitHub Desktop.
Save tinomen/6694488 to your computer and use it in GitHub Desktop.
positive Fibonacci sum
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.
@scizo
Copy link

scizo commented Sep 25, 2013

def fibs
  Enumerator.new do |y|
    a, b = 0, 1
    loop do
      y << a
      a, b = b, a + b
    end
  end
end

puts fibs.take_while{|n| n <= 4E6}.select(&:even?).reduce(:+)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment