gpt4 book ai didi

sml - 在 SML 中从十进制转换为二进制

转载 作者:行者123 更新时间:2023-12-04 09:20:10 28 4
gpt4 key购买 nike

我有以下公式

fun foo 0 = [0] 
| foo num = let val l = (num mod 2)::foo(num div 2) in
rev l
end;

应该从十进制转换为二进制。它具有以下签名

val foo = fn : int -> int list

我不确定我到底哪里出错了,因为我得到的结果不正确。有人可以帮我弄清楚我哪里出错了吗?

最佳答案

问题似乎是您在每个递归步骤中反转结果列表,而不是在最后一次。

此外,您可能需要将 0 映射到空列表,否则最后会有一个 0 太多。

关于sml - 在 SML 中从十进制转换为二进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21970248/

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