问题
How to return all the elements of a list of lists in Prolog:
That's my code:
treturn_list_members([[Head|_]|Lists], Head).
treturn_list_members([[_|T]|Lists], Head):- return_list_members([T|Lists], Head).
When I execute, it only return the elem of the first list.
?- treturn_list_members([[12,3],[45,6],[11,90]],L).
L = 12 ;
L = 3 ;
false.
回答1:
Rather use a better name. "Returning" means that you operationalize this relation. But it suffices to say what the arguments are:
listoflist_member(Xss, X) :-
member(Xs, Xss),
member(X, Xs).
来源:https://stackoverflow.com/questions/50543473/return-elements-list-of-list-prologs