我对prolog有很多麻烦,因为教授要求我们不要使用基础案例。我终于让我的隔离谓词工作,除了它说Even = Odd而不是Even = []就像它应该的那样。有没有办法解决这个问题?
segregate(List, Even, Odd) :-
(not(length(List, 0)) ->
% segregate the list
;
Even = [],Odd = [], true).
?- segregate([], Even, Odd).
Even = Odd, Odd = []