【发布时间】:2017-10-01 22:12:41
【问题描述】:
mergelist([],[],[]).
mergelist([X],[],[X]).
mergelist([],[Y],[Y]).
我正在运行这个查询?-mergelist([1],[],[1]).
返回真
然后我运行这个查询?-mergelist([1,2],[],[1,2]).它返回假(否)。
我不知道出了什么问题。
我正在使用 ECLiPSe 6.1
【问题讨论】:
标签: prolog
mergelist([],[],[]).
mergelist([X],[],[X]).
mergelist([],[Y],[Y]).
我正在运行这个查询?-mergelist([1],[],[1]).
返回真
然后我运行这个查询?-mergelist([1,2],[],[1,2]).它返回假(否)。
我不知道出了什么问题。
我正在使用 ECLiPSe 6.1
【问题讨论】:
标签: prolog
Prolog 无法将 [1,2] 与以下任何一项进行模式匹配:
[X] 专门设计用于与单元素列表进行模式匹配。
试试这个:
mergelist(L,[],L) :- is_list(L).
mergelist([],L,L) :- is_list(L).
【讨论】: