RosettaCodeData/Task/Perfect-numbers/Clojure/perfect-numbers-1.clj

10 lines
202 B
Clojure
Raw Permalink Normal View History

2013-04-10 23:57:08 -07:00
(defn proper-divisors [n]
(if (< n 4)
2015-02-20 00:35:01 -05:00
[1]
(->> (range 2 (inc (quot n 2)))
(filter #(zero? (rem n %)))
(cons 1))))
2013-04-10 23:57:08 -07:00
(defn perfect? [n]
2015-02-20 00:35:01 -05:00
(= (reduce + (proper-divisors n)) n))