Código:
% Equipos
equipo('River').
equipo('Boca').
equipo('Independiente').
equipo('San Lorenzo').
equipo('Estudiantes').
equipo('Racing').
equipo('Banfield').
equipo('Lanus').
% equipos(X) devuelve el listado de equipos.
equipos(R) :- findall(X, equipo(X), R).
% Partidos
partidos([],[]).
partidos(Equipos,Partidos) :- perm(2,Equipos,Partidos).
% Permutacion(CantidadDeElementos, Lista, Resultado).
perm(1, Input, [Last]) :-
member(Last, Input).
perm(N, Input, [First,Second|Perm]) :-
N > 1, N0 is N-1,
member(First, Input),
dif(First, Second),
perm(N0, Input, [Second|Perm]).
Si les interesa, comenten el código, o lo que quieran, cualquier opinión es buena. Saludos.
ResponderBorrar