une_lista(L1, L2, L3, E1):- pertenece(E1, L1), %E1 pertenece a L1 si E1, es la cabeza de L1 append(L1, L2, L3). %pertenece( _, [ ] ):- fail. pertenece( E, [E | _] ). pertenece( E, [ _ | T ] ):- pertenece( E, T ). une( [ ], Y, Y ). une( [ E | T1 ], L2, [ E | T2 ] ) :- une( T1, L2, T2 ). copia(X, X). mayor(X,Y,X):- X > Y. es_par(X):- X mod 2 =:= 0. cuenta_pares( [ ], N, N). cuenta_pares( [ E | T ], A, B):- es_par(E), A1 is A + 1, cuenta_pares(T, A1, B). cuenta_pares([ _| T ], A, B):- cuenta_pares(T, A, B).