【发布时间】:2019-03-22 00:47:15
【问题描述】:
给定一个列表 (List1),我尝试对列表中的每个数字求平方并在一个新列表 (List2) 中返回答案,其中 List2 中的每个元素都采用 (Xi, Ji) 形式。
?- square([1,2,3,], L).
L = [[1,1],[2,4],[3,9]].
这是我的代码:
square([], []).
square([N|Tail], [SqrdN|SqrdTail]) :-
SqrdN is [N|N*N],
square(Tail, SqrdTail).
这给了我一个类型错误:预期为 '[]',找到了 `[1|1*1]'(复合)(“x”必须包含一个字符)。
我怎样才能做到这一点?
【问题讨论】: