我是 turbo prolog 的新手。我在附加嵌套列表时遇到了问题。我想要这样的目标-
目标:mega_append([[1,3],[2,4,6],[0]],X)
输出应该是X=[1,3,2,4,6,0]
我使用了以下代码:
domains
list=integer*
predicates
mega_append(list,list)
append(list,list,list)
clauses
mega_append([],[]).
mega_append([H|T],L3):-
mega_append(H,L1),
mega_append(T,L2),
append(L1,L2,L3).
mega_append(X,[X]).
append([],ListB,ListB).
append([X|List1],List2,[X|List3]):-
append(List1,List2,List3).
程序生成错误。它是“此位置的变量类型非法”。然后它指示 H 在行中的位置 - mega_append(H,L1)。我怎样才能摆脱这个问题?我的程序有错误吗?请帮我。