Listas: ultimo, invierte, palindroma, busca, sublista
ultimo([],E,[E|[]]).
ultimo([H|T],E,[H|R]) :- ultimo(T,E,R).
invierte([],[]) :- !.
invierte([H|T],R) :- invierte(T,R1), ultimo(R1,H,R), !.
invierte(L,R) :- invierte(R,L) , !.
palindroma([]).
palindroma([_|[]]).
palindroma([H|T]) :- ultimo(P,H,T), palindroma(P).
%p2(T) :- invierte(T,T).
b2([],_).
b2([H|T],[H|T2]) :- b2(T,T2).
busca([],[]).
busca([H|T],[H|T2]) :- b2(T,T2),!.
busca(L,[_|T]) :- busca(L,T).
sublista([H|_],1,1,[H|[]]).
sublista([H|T],1,S,[H|T2]) :- S>1,S2 is S-1, sublista(T,1 ,S2,T2).
sublista([_|T],I,S,R ) :- I>1,I2 is I-1, sublista(T,I2,S ,R ).
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario