Juego Tres En Linea.pptx

10
El Juego de Tres en Línea Integrantes : - Julca Vivanco, Jose Luis - Fernandez Mendoza, Pool Curso: Inteligenticia Artificial

Transcript of Juego Tres En Linea.pptx

Apresentao do PowerPoint

El Juego de Tres en Lnea Integrantes : - Julca Vivanco, Jose Luis - Fernandez Mendoza, Pool Curso: Inteligenticia Artificial

El Juego de Tres en lneaTres en lnea 123456789Las Casillas estn numeradas de 1 al 9

Sucesos para ganar:

ganafila(1,2,3); ganafila(4,5,6); ganafila(7,8,9);

ganacolumna(1,4,7) ganacolumna(2,5,8) ganacolumna(3,6,9)

ganadiagonal(1,5,9) ganadiagonal(3,5,7)

gana(Tabla, Jugador) :- ganafila(Tabla, Jugador); ganacolumna(Tabla, Jugador); ganadiagonal(Tabla, Jugador).

ganafila(Tabla, Jugador) :- Tabla = [Jugador,Jugador,Jugador,_,_,_,_,_,_]; Tabla = [_,_,_,Jugador,Jugador,Jugador,_,_,_]; Tabla = [_,_,_,_,_,_,Jugador,Jugador,Jugador].

ganacolumna(Tabla, Jugador) :- Tabla = [Jugador,_,_,Jugador,_,_,Jugador,_,_]; Tabla = [_,Jugador,_,_,Jugador,_,_,Jugador,_]; Tabla = [_,_,Jugador,_,_,Jugador,_,_,Jugador].

ganadiagonal(Tabla, Jugador) :- Tabla = [Jugador,_,_,_,Jugador,_,_,_,Jugador];Tabla = [_,_,Jugador,_,Jugador,_,Jugador,_,_].

xxxxxxxxxxxxxxxxxxxxxxxx

como_jugar:- write('Tu eres el jugador x, ingrese la posicion de la casilla a jugar.'), nl, mostrar([1,2,3,4,5,6,7,8,9]).

mostrar([A,B,C,D,E,F,G,H,I]) :-write('|'),write([A,B,C]),write('|'),nl,write('|'),write([D,E,F]),write('|'),nl,write('|'), write([G,H,I]),write('|'),nl,nl.

Impresin del tablero:Para mostrar en pantalla las jugadas del jugador x y de la computadora(jugador o) imprimimos jugar :- como_jugar, jugardela([a,a,a,a,a,a,a,a,a]).El predicado jugar comienza un juego con el usuario. jugardela(Tabla) :- gana(Tabla, x), write('Tu ganaste!'). jugardela(Tabla) :- gana(Tabla, o), write('Gano IA!'). jugardela(Tabla) :- read(N), xmovimiento(Tabla, N, NuevaTabla), mostrar(NuevaTabla), oresponde(NuevaTabla, NuevanuevaTabla), mostrar(NuevanuevaTabla), jugardela(NuevanuevaTabla). A continuacin explicaremos los movimientos del juego:Ejecutar el programa con jugar. Se mostrar la tabla con sus respectivas posiciones.El usuario ingresa un nmero y mediante xmovimiento lo reemplaza por x en la nueva Tabla y muestra la NuevaTabla.Luego el programa responde mediante las reglas de oresponde e inmediatamente muestra la NuevanuevaTabla. Una vez realizada la jugada el programa pedira hacer la siguiente jugada mediante jugardela(NuevanuevaTabla).(Cabe decir que en la primera jugada la Tabla, NuevaTabla y NuevanuevaTabla son tablas temporales para las siguientes jugadas a hacer)

mostrar([1,.,9]) xmovimiento(Tabla, N, NuevaTabla) mostrar(NuevaTabla) oresponde(NuevaTabla, NuevanuevaTabla) mostrar(NuevanuevaTabla)jugardela(NuevanuevaTabla).Ejemplo, donde la computadora(Inteligencia Artificial) gana al usuario.

Ejemplo, donde el usuario gana a la computadora(IA)

Ejemplo, donde el usuario y la computadora (IA) empatan.