Skip to content

Instantly share code, notes, and snippets.

View fastzen's full-sized avatar

Alastair fastzen

  • Salt Spring Island, BC
View GitHub Profile
@fastzen
fastzen / recursion.erl
Created February 25, 2017 00:01
FutureLearn - recursion
-module(recursion).
-export([fac/1,fib/1,pieces/1,multipieces/2]).
fac(0) -> 1;
fac(N) when N>0 -> fac(N-1)*N.
fib(0) -> 0;
fib(1) -> 1;
fib(N) ->
fib(N-1)+fib(N-2).
@fastzen
fastzen / untitled
Created February 28, 2017 18:39
tailrecursion.erl
-module(tailrecursion).
-export([fac/1,loop/1,sum/1,maximum/1,fib/1,perfect/1]).
fac(N) -> fac(N,1).
fac(0,P) ->
P;
fac(N,P) when N>0 ->
fac(N-1,P*N).
loop(N) when N>0 ->
@fastzen
fastzen / untitled
Created February 28, 2017 18:46
tailrecursion.erl
-module(tailrecursion).
-export([fac/1,loop/1,sum/1,maximum/1,fib/1,perfect/1]).
fac(N) -> fac(N,1).
fac(0,P) ->
P;
fac(N,P) when N>0 ->
fac(N-1,P*N).
loop(N) when N>0 ->