gpt4 book ai didi

string - 定义所需的小数 [Char] 实例?

转载 作者:行者123 更新时间:2023-12-03 13:35:21 24 4
gpt4 key购买 nike

这是一个简单的代码,旨在获取一个十进制数并返回一个表示二进制等效项的字符串。

b2d :: Int -> String

b2d 1 = "1"
b2d x = show (x `mod` 2) ++ b2d x/2

然而,当我试图通过拥抱来运行它时,它给了我一个错误:
:3 - Instance of fractional [Char] required for definition of b2d

我不知道这是什么意思。谁能告诉我如何修复它?

干杯。

最佳答案

/ 是分数除法运算符。对于整数,您需要使用 div (并添加括号作为 newacct 提到):

b2d x = show (x `mod` 2) ++ b2d (x `div` 2)

对于额外的效率点,使用 divMod 只执行一个除法:
b2d x = let (q,r) = x `divMod` 2
in show r ++ b2d q

关于string - 定义所需的小数 [Char] 实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1463962/

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