【发布时间】:2017-12-17 21:52:15
【问题描述】:
我有以下代码:
pair_list([X,Y],[[X,Y]]).
pair_list([E,Z|X],[K|Y]):- [E,Z]==K, pair_list(X,Y).
当我运行它时,它会为
提供正确的输出?- pair_list([1, 2, 3, 4, 5, 6], [[1, 2], [3, 4], [5, 6]]).
true ;
但是当我运行时
?- pair_list([1,2, 3, 4, 5, 6], X).
我刚收到false.
我的问题是为什么我没有收到X=[[1, 2], [3, 4], [5, 6]]
【问题讨论】:
-
将
==(比较)更改为=(或将[E,Z]移到头部)。
标签: prolog