Bonjour à tous,
je suis débutant en prolog et je galère sur un truc qui n'est surement pas dur...
Je souhaite récuperer l'indice d'un élément d'une liste.
Par exemple : L = [haut,gauche,droite,bas].
Et donc faire quelque chose qui me renverrai 2 si j'y passe droite en parametre..
Alors j'ai essayé quelque chose mais ça ne marche pas.. :
testA est mon algo recursif qui incrémente un compteur jusqu'a tomber sur le bon élément et donc on l'apelle avec testAB et j'utilise le resultat du compteur "X" pour la suite. Seulement X ne garde pas sa valeur une fois sortie de testA... testA me renvoit juste true ou false..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 testA(T,[T|_], Compt). testA(T,[K|L], Compt):- Compt1 is Compt+1, testA(T, L, Compt1). testAB(T,X,R):-testA(T, [nord,est,sud,ouest], X), nth0(X, [nord,est,sud,ouest], R).
Si quelqu'un pouvait m'expliquer ce que j'ai mal fait..
Merci par avance
Max
Partager