Bonjour à tous,
Voilà, j'ai un ptit souci en prolog en ce qui concerne les listes.
Voici mon code :
Explications:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ajouter(X, L, [X|L]). plus_court(X,'sortie',Z):-aller(X,'sortie',S),longueur(S,T),ajouter(T,L,Z),L is Z.
Le prédicat "aller" renvoie plusieurs listes en bouclant. Je récupère à chaque fois sa longueur (T) grâce au prédicat "longueur". Mais le problème est que je voudrais mettre ce résultat de longueur sous forme d'une liste.
A chaque passage dans la boucle, il devra insérer la longueur de la liste dans une nouvelle liste.
Exemple :
Au 1er passage :
S=[1,2,3,4] -> T=4 -> Z=[4]
Au 2ème passage :
S=[1,2] -> T=2 -> Z=[2,4]
et ainsi de suite jusqu'à la fin de ma boucle.
Donc à la fin, je dois récupérer : Z=[2,4]
J'espère avoir été assez claire, je vous remercie d'avance pour vos réponses.
Partager