我们如何在Prolog中按顺序添加两个列表的每个元素?

时间:2019-12-04 19:50:17

标签: list prolog

写一个Prolog谓词seqadd/3,使得当X和Y是相同长度的整数列表且{     Z是它们的序列和。

1 个答案:

答案 0 :(得分:0)

您要将第一个列表的第一个元素添加到第二个列表的第一个元素,依此类推。对? 如果是,那么您可以在下面使用这种方法。

seqsum([],[],[]).
seqsum([H|T],[H1|T1],[H2|Z]):- H2 is H+H1 , seqsum(T,T1,Z).

输出

?- seqsum([1,2,3],[4,5,6],Z).
   Z = [5,7,9]
   yes

希望这对您有所帮助。