miércoles, 18 de mayo de 2016

Ejercicios Resueltos, Functores, En lenguaje Prolog

Hoy veremos una serie de ejercicios resueltos en el lenguaje "Prolog", se verá el uso de functores, si tienen alguna duda en algún ejercicio solo comenten.

menor(A,B,Me):- A<B, Me is A,!.
menor(A,B,Me):- B=<A,Me is B.

menor(A,B,C,Me):- menor(A,B,Me1),menor(C,Me1,Me),!.
menor(A,B,C,D,Me):- menor(A,B,C,Me1),menor(Me1,D,Me),!.
menor(A,B,C,D,E,Me):- menor(A,B,C,D,Me1),menor(Me1,E,Me),!.

mayor(A,B,My):- A>B, My is A,!.
mayor(A,B,My):- B>=A, My is B.

mayor(A,B,C,My):-mayor(A,B,Z),mayor(Z,C,My).
mayor(A,B,C,D,My):-mayor(A,B,C,X),mayor(X,D,My).
mayor(A,B,C,D,E,My):-mayor(A,B,C,D,X),mayor(X,E,My).
segMenor(A,B,Me):-mayor(A,B,Me).
segMenor(A,B,C,Me):-mayor(A,B,X),mayor(B,C,Y),mayor(A,C,Z),menor(X,Y,Z,Me).
segMenor(A,B,C,D,Me):-segMenor(A,B,C,X),segMenor(A,C,D,Y),segMenor(A,B,D,Z),segMenor(B,C,D,U),
   menor(X,Y,Z,U,Me).

segMayor(A,B,My):-menor(A,B,My).
segMayor(A,B,C,My):-mayor(A,B,X),mayor(B,C,Y),mayor(A,C,Z),menor(X,Y,Z,My).
segMayor(A,B,C,D,My):-segMayor(A,B,C,X),segMayor(A,C,D,Y),segMayor(A,B,D,Z),segMayor(B,C,D,U),
   mayor(X,Y,Z,U,My).
tercerMenor(A,B,C,Me):-mayor(A,B,C,Me).
tercerMenor(A,B,C,D,Me):-segMayor(A,B,C,D,Me).

tercerMayor(A,B,C,Me):-menor(A,B,C,Me).
tercerMayor(A,B,C,D,Me):-segMenor(A,B,C,D,Me).

menorDif(A,B,Me):-Me is A-B.
menorDif(A,B,C,Me):-X is A-B,Y is A-C, Z is B-C, menor(X,Y,Z,Me).

iguales(A,B):- A=:=B.
iguales(A,B,C):- iguales(A,B),iguales(B,C).
iguales(A,B,C,D):- iguales(A,B,C),iguales(A,D).


Quizás tambien te interese: