Bonjour a tous,
Alors voilà mon problème, je dois répondre à cette question :
Écrire un pédicat Prolog mes revues/2 qui associe à une personne la liste des revues auxquelles elle est abonnée.
-) J'ai donc ma liste des revues :
-) Les différentes personnes inscrites aux différentes revues :
Code : Sélectionner tout - Visualiser dans une fenêtre à part liste_revues([sports, sciences, psycho, sante, beaute, art, lire]).
-) J'ai créé ce prédicat qui me permet de savoir qu'elle personne est abonné ou pas à une revue :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 abonnes(sports, [peter, paul, mary, john, ann, luke]). abonnes(sciences, [robin, dylan, lucy, kate, john, ann]). abonnes(psycho, [luke, tom, mark, emily]). abonnes(sante, [ann, emily, ava, alan, martin, jude]). abonnes(beaute, [peter, dylan, luke, lucy, ava]). abonnes(art, [robin, oliver,nelson]). abonnes(lire, []).
Exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 est_abonne(X,R) :- abonnes(R, L), membre(X, L). membre(X, [X|L]). membre(X, [Y|L]) :- membre(X, L).
Donc voilà je voudrais que la réponse soit L = [sports, psycho, beaute].est_abonne(luke, L).
L = sports
Yes (0.00s cpu, solution 1, maybe more)
L = psycho
Yes (0.01s cpu, solution 2, maybe more)
L = beaute
Et je ne vois pas trop comment faire, donc si vous avez des idées à me proposer, sa serait cool
Merci
Partager