En prolog listar BACKTRACKS suele ser muy util, esta simple funcion con algunas modificaciones genera una lista A de backtracks, asimismo el segundo argumento (Ax) puede usarse como una lista de variables no deseadas
p(1).
p(2).
p(3).
p(4).
p(5).
p(6).
p(7).
p(8).
p(9).
pes([X|A],Ax):-
p(X),
not(member(X,Ax)),
pes(A,[X|Ax]),!.
pes([],Ax):-!.
-----------(corrida de ejemplo)--------------------
[debug] ?- pes(A,[]).
A = [1, 2, 3, 4, 5, 6, 7, 8, 9].
[debug] ?- pes(A,[4,5,6,7]).
A = [1, 2, 3, 8, 9].
Hasta la proxima.
No hay comentarios:
Publicar un comentario