Я новый ученик в Clojure и работаю над этой функцией no-divisors?
, где она должна возвращать true, если ни одно из чисел от 2 до √? не делит n, и false в противном случае. Мне также нужно использовать 2 функции внутри no-divisors
. Первый - get-divisors
, который принимает число n в качестве входных данных и возвращает все числа от 2 до √? включительно. Вторая функция Divides?
возвращает true, если x делит n и false в противном случае.
Это то, что я пытался:
(defn Divides? [a b]
(zero? (mod b a)))
(defn get_divisors [n]
( range 2 (Math/sqrt n)))
(println "get divisors" (get_divisors 101))
output :get divisors (2 3 4 5 6 7 8 9 10)
(defn no-divisors? [n]
(->> (get_divisors n)
(filter #(Divides? % n))
empty?))
(println "no-divisors"(no-divisors? 9))
//output :expected :false current: true
Я ожидаю, что результат будет ложным, но это не так , Любые предложения, ребята, я был бы признателен