lish/examples/recursive-fn.lsh

16 lines
298 B
Text
Raw Normal View History

2017-04-09 16:09:31 +00:00
def fact (fn [n] (if (<= n 1) 1 (* (fact (- n 1)) n)))
= 1 (fact 0)
= 1 (fact 1)
= 2 (fact 2)
= 6 (fact 3)
= 24 (fact 4)
= 120 (fact 5)
def fib (fn [n] (if (<= n 1) 1 (+ (fib (- n 2)) (fib (- n 1)))))
= 1 (fib 0)
= 1 (fib 1)
= 2 (fib 2)
= 3 (fib 3)
= 5 (fib 4)
= 8 (fib 5)
= 13 (fib 6)
= 21 (fib 7)