Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Point Plane Prolog
Point Plane Prolog
%Ejercicio1
lugar(X,Y,1):-X>0,Y>0,!.
lugar(X,Y,2):-X<0,Y>0,!.
lugar(X,Y,3):-X<0,Y<0,!.
lugar(X,Y,4):-X>0,Y<0,!.
%Ejercicio2
mismolugar(X,Y,X2,Y2):-lugar(X,Y,L),lugar(X2,Y2,L).
%Ejercicio3
ejex(_,Y):-Y=:=0,!.
%Ejercicio4
ejey(X,_):-X=:=0,!.
%Ejercicio5
dif_eje(X,Y,X2,Y2):-ejex(X,Y),ejey(X2,Y2);ejex(X2,Y2),ejey(X,Y).
%Ejercicio6
diagonalopuesto(X,Y,X2,Y2):-lugar(X,Y,1),lugar(X2,Y2,3);
lugar(X,Y,3),lugar(X2,Y2,1);lugar(X,Y,2),lugar(X2,Y2,4);
lugar(X,Y,4),lugar(X2,Y2,2).
%Ejercicio7
distancia(X,Y,X2,Y2,D):-D is sqrt((X-X2)*(X-X2)+(Y-Y2)*(Y-Y2)).
%Ejercicio8
esta_dentro(X,Y,R):-distancia(0,0,X,Y,D),D=<R.
%Ejercicio9
equilatero(X1,Y1,X2,Y2,X3,Y3):-distancia(X1,Y1,X2,Y2,D),
distancia(X2,Y2,X3,Y3,D),distancia(X1,Y1,X3,Y3,D).
%Ejercicio10
isoceles(X1,Y1,X2,Y2,X3,Y3):-
distancia(X1,Y1,X2,Y2,D),distancia(X2,Y2,X3,Y3,D),
not(distancia(X1,Y1,X3,Y3,D));distancia(X1,Y1,X2,Y2,D),
distancia(X1,Y1,X3,Y3,D),not(distancia(X2,Y2,X3,Y3,D));
distancia(X1,Y1,X3,Y3,D),distancia(X3,Y3,X2,Y2,D),
not(distancia(X1,Y1,X2,Y2,D)).
%Ejercicio11
horizontal_line(X1,Y1,X2,Y2):-X1=\=X2,Y1=:=Y2.
%Ejercicio12
vertical_line(X1,Y1,X2,Y2):-X1=:=X2,Y1=\=Y2.
%Ejercicio13
lugarDif(X1,Y1,X2,Y2):-not(mismolugar(X1,Y1,X2,Y2)).
%Ejercicio14
lugarDif(X1,Y1,X2,Y2,X3,Y3):-
not(mismolugar(X1,Y1,X2,Y2)),not(mismolugar(X1,Y1,X3,Y3)),
not(mismolugar(X2,Y2,X3,Y3)).
%Ejercicio15
dosmismolugar(X1,Y1,X2,Y2,X3,Y3):-
mismolugar(X1,Y1,X2,Y2),not(mismolugar(X1,Y1,X3,Y3));
mismolugar(X1,Y1,X3,Y3),not(mismolugar(X1,Y1,X2,Y2));
mismolugar(X2,Y2,X3,Y3),not(mismolugar(X1,Y1,X3,Y3)).
%Ejercicio16
punto_medio(X1,Y1,X2,Y2,X,Y):-X is ((X1+X2)/2),Y is ((Y1+Y2)/2).
%Ejercicio17
pendiente(X1,Y1,X2,Y2,M):-M is ((Y1-Y2)/(X1-X2)).