Clojure分割布尔

Clojure分割布尔,clojure,Clojure,这段代码应该在下面输出,但是,我是Clojure的新手,不了解它是如何工作的,需要一些帮助 (defn divide? [a b] (zero? (mod a b))) ///output/// (divides? 2 10) => true (divides? 4 10) => false /// output/// 然而,实际产出是: ///output/// (divides? 2 10) => false (divides? 4 10) => fa

这段代码应该在下面输出,但是,我是Clojure的新手,不了解它是如何工作的,需要一些帮助

(defn divide? [a b]
(zero? (mod a b)))

///output///
(divides? 2 10)
 => true
(divides? 4 10)
=> false
 /// output///
然而,实际产出是:

 ///output///
 (divides? 2 10)
 => false
(divides? 4 10)
 => false
  /// output///

有没有办法解决这个问题?

您只需将参数切换到
mod
即可获得正确的输出:

(defn divisible-by? [div num]
  (zero? (mod num div)))

(divisible-by? 4 10)  ;=> false
(divisible-by? 2 10)  ;=> true
(divisible-by? -2 10) ;=> true

<> >与Culjul.Calm的代码> MOD,<代码> REM,<代码> /代码>等,我考虑将参数替换为函数,以便<代码> Num 先出现,<代码> div < /代码>第二。< /P>到底是什么问题?请描述一下!