Я использую Clojure для выполнения следующей задачи -
Write a function named get-divisors which takes a number n as input and returns the all the numbers between 2 and √? inclusive
Пока у меня есть этот код, который, кажется, работает должным образом:
(defn get-divisors [n]
(str (range 2 (Math/sqrt n))))
Пользователь вставляет иВвод и код должны отображать все числа от 2 до квадратного корня этого конкретного числа.(Я знаю! Get-divisors - ужасное имя для функции)
Я набираю (get-divisors 101)
Я получаю следующий вывод "(2 3 4 5 6 7 8 9 10)"
, который является правильным.
Однако проблема заключается в том, когдаЯ использую число 4
Я получаю результат nil или ()
, когда я должен фактически получить 2
.Или когда я ввожу 49
, я должен получить все числа от 2
до 7
, но я получаю только все числа от 2
до 6
.
Я искал в Интернете некоторую информацию.Я новичок в Clojure, однако, информация об этом программировании кажется скудной, в отличие от Java
, JavaScript
.Я прочитал другую ветку, которая основывалась на сходной ситуации, но предложения / ответы, к сожалению, не сработали.
Буду признателен за любую помощь.Спасибо.