Я так близок к тому, чтобы это взломать, но я не вижу, что мне не хватает. является премьер? должен возвращать true, если введенное число является простым числом, или он должен возвращать false, если число не является простым. Созданная мною функция прекрасно работает, за исключением того, что она не будет возвращать false для числа 1. Как часть спецификации, мне сказали установить оба числа 1 и 2, что я и пытался сделать, но, похоже, это не так. что-нибудь.
(defn is-prime? [n]
(if (= n 1) false)
(if (= n 2) no-divisors?)
(no-divisors? n)
)
Вот список всех исходных данных и ожидаемых результатов для is-prime? Единственное, что возвращает неправильное значение (is-prime? 1).
(is-prime? 1)
=> false
(is-prime? 2)
=> true
(is-prime? 3)
=> true
(is-prime? 4)
=> false
(is-prime? 101)
=> true