gpt4 book ai didi

clojure - 十进制到二进制 Clojure

转载 作者:行者123 更新时间:2023-12-05 08:19:49 26 4
gpt4 key购买 nike

我按照这个伪代码递归地将十进制转换为二进制。

findBinary(decimal)
if (decimal == 0)
binary = 0
else
binary = decimal % 2 + 10 * (findBinary(decimal / 2)

这是我试过的:

(defn binary [n]
(loop [res 0]
(if (= n 0)
res
(recur (res (* (+ (mod n 2) 10) (binary (quot n 2)))) )
)
)
)

但是我得到这个错误:

ClassCastException java.lang.Long cannot be cast to clojure.lang.IFn  user/binary (form-init9002795692676588773.clj:6)

关于如何修复代码以完成任务有什么想法吗?

最佳答案

我意识到,这是关于旅程而不是结果。但是要提到过:Long/toString 可以从一个宽的数字中给你一个字符串各种基数。

(Long/toString 123 2)
; → "1111011"

关于clojure - 十进制到二进制 Clojure,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66405315/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com