Você está na página 1de 4

MANUAL DE USUARIO Juego de ajedrez Prolog.

Introduccin:
A continuacin se mostrara un programa en Prolog que simula el
movimiento de un juego de ajedrez, con su respectiva explicacin para que
se pueda apreciar ms claramente. 2.-

Juego de Ajedrez en Prolog:


Predicado: Movimiento (Pieza, Casilla_Origen, Casilla_Llegada) Las piezas del
juego son: Torre, Caballo, Arfil, Rey, Dama, Pen. Las casillas del tablero de
ajedrez las denominamos por los trminos: (x,y) ente 1 y 8

Explicacion:

movimiento_torre:
El movimiento de la torre desde su punto actual hasta el punto de llegada
con respecto de su movimiento, entre los valores de la posicin del tablero,
se puede mover hasta 7 casilleros y puede retroceder hasta 7 casilleros en
la misma lnea del eje Y.

Pieza1 (Torre).
Pieza2 (Caballo).
Pieza3 (Arfil).
Pieza4 (Rey).
Pieza5 (Dama).
Pieza6 (Pen).
Muestra la numeracin de las piezas y sus respectivos nombres para que
de esta forma se identifiquen.

movimiento(P,(X1,Y1),(X2,Y2)):pieza1(P),
correcto(X1,Y1),
movimiento_torre((X1,Y1),(X2,Y2)),
correcto(X2,Y2)

Si la posicin de las piezas mostradas anteriormente estn en una posicin


correcta entre las posiciones desde la 1 a la 8 en los respectivosa ejes X e Y.

Movimiento_Torre ((X1, Y1), (X2, Y2)):Between (-7, 7, Z), Ok (Z, 0), X2 is X1 + Z, Y2 is Y1.
El movimiento de la torre desde su punto actual hasta el punto de llegada
con respecto de su movimiento, entre los valores de la posicin del tablero,
se puede mover hasta 7 casilleros y puede retroceder hasta 7 casilleros en
la misma lnea del eje Y.

Movimiento_Caballo
((X1, Y1), (X2, Y2)):X2 is X1 + 1, Y2 is Y1 + 2;
X2 is X1 + 1, Y2 is Y1 - 2;
X2 is X1 - 1, Y2 is Y1 + 2;
X2 is X1 - 1, Y2 is Y1 - 2;
X2 is X1 + 2, Y2 is Y1 + 1;
X2 is X1 + 2, Y2 is Y1 - 1;
X2 is X1 - 2, Y2 is Y1 + 1;
X2 is X1 - 2, Y2 is Y1 - 1;
El movimiento del caballo desde su punto actual hasta el punto de llegada
con respecto de su movimiento, entre los valores de la posicin del tablero,
se puede mover con el eje X1 un espacio hacia adelante y con el eje Y2 dos
espacios hacia la derecha o dos espacios hacia la izquierda, se puede mover
con el eje X2 un espacio hacia atrs y con el eje Y2 dos espacios hacia la
derecha o dos espacios hacia la izquierda, se puede mover con el eje X2 dos
espacio hacia adelante y con el eje Y2 un espacios hacia la derecha o un
espacios hacia la izquierda, se puede mover con el eje X2 dos espacio hacia
atrs y con el eje Y2 un espacios hacia la derecha o un espacios hacia la
izquierda.

Movimiento_Arfil ((X1, Y1), (X2, Y2)):Between (-7, 7, Z), Ok (Z, 0), X2 is X1 + Z, Y2 is Y1 + Z.


El movimiento del arfil desde su punto actual hasta el punto de llegada con
respecto de su movimiento, entre los valores de la posicin del tablero, se
puede mover hasta 7 casilleros y puede retroceder hasta 7 casilleros,
avanzan lo mismo tanto para el eje X2 como para el Y2 y a su vez
retroceden lo mismo sea se mueve en forma diagonal por el tablero.

Movimiento_Rey ((X1, Y1), (X2, Y2)):Between (-1, 1, Z),


Between (-1, 1, T), Ok (Z, T), X2 is X1 + Z, Y2 is Y1 + T.
El movimiento del rey desde su punto actual hasta el punto de llegada con
respecto de su movimiento, entre los valores de la posicin del tablero, se
puede mover hasta 1 casilleros ya sea hacia adelante, hacia atrs, hacia la
izquierda, hacia la derecha o en diagonal.
Movimiento_Dama (X, Y):Movimiento_Arfil (X, Y). //el mismo movimiento del arfil para la posicin del
eje X y el mismo movimiento que el del arfil para la posicin del eje Y.

Movimiento_Pen ((X1, Y1), (X2, Y2)):X2 is X1,


Y2 is Y1 + 1.
El movimiento del pen desde su punto actual hasta el punto de llegada con
respecto de su movimiento, avanzan lo mismo para el eje X2 y para el eje
Y2 retrocede o avanza un espacio en forma diagonal con respecto al tablero
de ajedrez.