Bonjour,
Je suis débutant en Prolog. J'essaye de créer un prédicat pour obtenir le suffixe et le préfixe de la liste(X,l(a,l(b,0)))).
De manière à obtenir :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 prefixe(P,l(a,l(b,0))). P = 0; P = l(a, 0); P = l(a, l(b, 0)); false.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 suffixe(S,l(a,l(b,0))). S = l(a, l(b, 0)); S = l(b, 0); S = 0; false.
Voila ce que j'ai fait pour l'instant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 % Suffixe suffixe(T,l(T,_)). suffixe(X,l(_,Q)) :- suffixe(X,Q)..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 % Prefixe prefixe(Q,l(_,Q)). prefixe(X,l(_,Q)) :- prefixe(X,Q).
Mais j'obtiens :
.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 prefixe(S,l(a,l(b,0))). S = l(b, 0) ; S = 0 ; false.
Quelqu'un pourrait - il m'expliquer ce que j'ai fait de mal ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 suffixe(S,l(a,l(b,0))). S = a ; S = b ; false.






Répondre avec citation








Partager