【发布时间】:2023-04-10 09:27:01
【问题描述】:
我如何得到准确的答案,而不仅仅是数字/计数
我可以得到一个数字列表的平均值,但它只会将总数相加并除以计数
(defn aver
[numbers]
(if (empty? numbers)
0
(/ (reduce + numbers) (count numbers)))
)
如果我要获得 [5 10] 列表的平均值,我不会得到应该是 7.5 的答案,我只会得到等式,否则我该如何得到?
>(aver [5 10])
=> 15/2
【问题讨论】:
-
这不是一个等式,它是一个精确分数的文本表示。它是一个与您预期一样精确的数字。
-
参见clojure.org/reference/data_structures#Numbers,尤其是“传染”部分
标签: function clojure clojure-core.logic