Disons que j'ai ces faits:Comment renvoyer une liste dans Prolog?
parent(bob, sam). %bob is sam's parent
parent(sara, sam). %sara is sam's parent
je voulais savoir qui étaient parents de Sam et les retourner dans une liste et en tant que telle utilisée:
list_parents(P, L) :- findall(Parent, parent(Parent, P), L).
Ce que je veux à faire est maintenant poser la même question, mais avec un seul argument en tant que tel:
findParents(sam).
J'ai essayé:
findParents(Name) :- list_parents(Name, L).
mais de cette manière, Prolog répond simplement "True"
.
Impossible. Ne fais pas ça. Prolog n'a pas de valeur de retour sauf les valeurs booléennes. –