如何在序言中添加到列表的结尾

我试图在prolog中将一个项目添加到列表的末尾,但它始终失败。

insertAtEnd(X,[ ],[X]).
insertAtEnd(X,[H|T],[H|Z]) :- insertAtEnd(X,T,Z).    

letters([a,b,c]).

我不明白为什么这下面不起作用。

insertAtEnd(d,letters(Stored),letters(Stored)). 

我也试图将这个列表存储在整个变量Stored中,但我不确定上述是否是正确的方法。


Prolog实现了一个关系计算模型,变量只能被实例化,而不能被分配。 尝试

?- letters(Stored),
   insertAtEnd(d, Stored, Updated),
   write(Updated).

你可以使用append并把你的项目作为第二个列表

喜欢这个:

insertAtEnd(X,Y,Z): - 追加(Y,[X],Z)。

链接地址: http://www.djcxy.com/p/65491.html

上一篇: How to add to end of list in prolog

下一篇: Auto fill text on web service call response