Skip to content

Instantly share code, notes, and snippets.

@trptcolin
Created May 16, 2010 01:34
Show Gist options
  • Save trptcolin/402575 to your computer and use it in GitHub Desktop.
Save trptcolin/402575 to your computer and use it in GitHub Desktop.
(ns primeFactors)
(defn square [n] (* n n))
(defn divisible-by? [n candidate]
(= 0 (rem n candidate)))
(defn of [n]
(loop [factors [] n n candidate 2]
(cond
(= n 1) factors
(divisible-by? n candidate) (recur (conj factors candidate) (/ n candidate) candidate)
(> (square candidate) n) (conj factors n)
:else (recur factors n (inc candidate)))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment