如何在Prolog中返回列表列表的所有元素:
那是我的代码:
treturn_list_members([[Head|_]|Lists], Head).
treturn_list_members([[_|T]|Lists], Head):- return_list_members([T|Lists], Head).
当我执行时,它只返回第一个列表的元素。
?- treturn_list_members([[12,3],[45,6],[11,90]],L).
L = 12 ;
L = 3 ;
false.
答案 0 :(得分:2)
而是使用更好的名字。 “返回”意味着您可以操作此关系。但这足以说出论点是什么:
listoflist_member(Xss, X) :-
member(Xs, Xss),
member(X, Xs).