Prolog输出变量的值是另一个变量的名称,如果它们具有相同的值而不是值

时间:2017-11-21 07:09:17

标签: list prolog

我对prolog有很多麻烦,因为教授要求我们不要使用基础案例。我终于让我的隔离谓词工作,除了它说Even = Odd而不是Even = []就像它应该的那样。有没有办法解决这个问题?

segregate(List, Even, Odd) :-
   (not(length(List, 0)) ->
    % segregate the list
    ;
    Even = [],Odd = [], true).

?- segregate([], Even, Odd). 
Even = Odd, Odd = []

0 个答案:

没有答案
相关问题