【发布时间】:2015-02-08 01:19:11
【问题描述】:
您好,我正在尝试用 SML 编写函数。我的目标是创建一个函数,该函数接受一个表示 [2,3,4] 之类的值的列表,并返回其整数表示,即 432(列表中的第一个元素是个位)。
所以我的思路是将列表中的每个元素相互添加..乘以 10^n 其中 n 每次增加一
例如 [2,3,4] -> 2*10^0 + 3*10^1 +4* 10^2 = 432..我不确定如何递归地执行此操作,但这就是我所拥有的
fun List2Integer nil = 0
| List2Integer (x::xs) = x * (power (10,1)) + (List2Integer xs);
我知道现在它不起作用,因为 x 总是乘以 10^1,而 1 没有增加。
感谢您抽出宝贵时间阅读本文。如果有任何提示,我将不胜感激
【问题讨论】: