我一直在为Prolog工作几个星期。我现在试图在其中编写一个称为匹配的函数:Prolog - 比较同一索引上具有相同元素的列表
使用三个参数(所有列表)编写一个名为匹配的谓词。 第三个列表必须包含前两个列表中包含相同值的位置的索引 。
如果我运行
matching([10,71,83,9,24,5,2],[8,71,26,9],Positions).
的结果是:
?- matching([10,71,83,9,24,5,2],[8,71,26,9],Positions).
Positions = [] ;
Positions = [] ;
Positions = [_2420] ;
Positions = [_2420] ;
Positions = [_2420, _2432];...
正确的答案将是位置势必[1,3]
。我不知道我的代码有什么问题。任何暗示是赞赏。
看到这个问题,这是同样的问题,我认为:http://stackoverflow.com/q/43313755/7473772 – 2017-04-11 07:34:15