13
Есть ли лучший способ, чем следующее:Число попадает в интервал в Clojure?
(defn in-interval?
"Returns a predicate that tests if its argument falls in
the inclusive interval [a, b]."
[a b]
(fn [x] (and (>= x a) (<= x b))))
При использовании:
((in-interval? 5 8) 5.5) ; true
((in-interval? 5 8) 9) ; false
Я не хочу использовать range
, например, потому, что создает ленивую последовательность.
Также стоит отметить вариационные версии операторов сравнения как «восходящие», «нисходящие», «строго восходящие» и «строго снижающиеся». –
Спасибо! Это хороший способ продемонстрировать ответ Blacksad: '(map # (<= 2% 4) [1 2 3 4 5])' –
@DavidJames Действительно. – Blacksad