Skip to content

Instantly share code, notes, and snippets.

@pulkit110
Created March 23, 2022 10:39
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 pulkit110/c8223b7ebf4dc6cb918f440c45e201cd to your computer and use it in GitHub Desktop.
Save pulkit110/c8223b7ebf4dc6cb918f440c45e201cd to your computer and use it in GitHub Desktop.
Fibonacci sequence generator from Rosetta Code
# https://rosettacode.org/wiki/Fibonacci_sequence#Elixir
defmodule FibonacciRosettaCode do
def list(number), do: Enum.map(0..number, &fibonacci/1)
def fibonacci(0), do: 0
def fibonacci(1), do: 1
def fibonacci(n), do: fibonacci(0, 1, n-2)
def fibonacci(_, prv, -1), do: prv
def fibonacci(prvprv, prv, n) do
next = prv + prvprv
fibonacci(prv, next, n-1)
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment