Alors ce que je cherche est essentiellement ceci:Comment puis-je trouver la liste dans une liste de listes dans laquelle la première occurrence d'un certain atome est trouvée?
findatom(A, L, NL),
with inputs:
A = -, %sought after atom
L = [[1,2,3], [2,-,3], [1,2,3]] %list of lists
and then it outputs:
NL = [2,-,3] %the first list containing the sought after atom
comment serait-ce possible? J'ai essayé ceci:
/*Append something (dummy variable) with the first occurence of the
sought after atom (L), then output everything after the found atom (L). */
findatom(L, List, NewList) :-
append(_, [L|T], List),
NewList = [L|T].
Cela ne fonctionne que s'il existe une liste d'atomes, pas une liste de listes. Comment pourrais-je développer cela pour le faire fonctionner pour une liste de listes?
Bien que l'append peut être utilisé de la manière la plus surprenante, il n'est pas tout à fait clair pour moi pourquoi vous pensez l'utiliser? –