Merge pull request #17 from HantonSacu/HantonSacu-14

Solve recursion
This commit is contained in:
Kenneth Kostrešević 2021-12-17 13:04:06 +01:00 committed by GitHub
commit fac0657300
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -3,21 +3,27 @@
(defn is-even? [n] (defn is-even? [n]
(if (= n 0) (if (= n 0)
__ true
(___ (is-even? (dec n))))) (not (is-even? (dec n)))))
(defn is-even-bigint? [n] (defn is-even-bigint? [n]
(loop [n n (loop [n n
acc true] acc true]
(if (= n 0) (if (= n 0)
__ acc
(recur (dec n) (not acc))))) (recur (dec n) (not acc)))))
(defn recursive-reverse [coll] (defn recursive-reverse [coll]
__) (loop [[head & tail] coll new-coll '()]
(if-not head
new-coll
(recur tail (conj new-coll head)))))
(defn factorial [n] (defn factorial [n]
__) (loop [n n acc 1]
(if (= n 1)
acc
(recur (dec n) (* acc n)))))
(meditations (meditations
"Recursion ends with a base case" "Recursion ends with a base case"