Skip to content

Commit d696095

Browse files
committed
Add q80
1 parent 54f4ee6 commit d696095

File tree

2 files changed

+22
-0
lines changed

2 files changed

+22
-0
lines changed

src/ex/q080.clj

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
;; https://4clojure.oxal.org/#/problem/080
2+
3+
(ns ex.q080)
4+
5+
(defn ans
6+
"Problem 80, Perfect Numbers"
7+
[x]
8+
(letfn [(divisors [y] (->> (range 1 y) (filter #(zero? (mod y %)))))]
9+
(= x (apply + (divisors x)))))

test/ex/q080_test.clj

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
;; https://4clojure.oxal.org/#/problem/080
2+
3+
(ns ex.q080-test
4+
(:require [clojure.test :as t]
5+
[ex.q080 :as sut]))
6+
7+
(t/deftest test-q80
8+
(t/testing "Problem 80, Perfect Numbers"
9+
(t/is (= true (sut/ans 6)))
10+
(t/is (= false (sut/ans 7)))
11+
(t/is (= true (sut/ans 496)))
12+
(t/is (= false (sut/ans 500)))
13+
(t/is (= true (sut/ans 8128)))))

0 commit comments

Comments
 (0)