juego del gato
alguien que necesite el juego de ga to con gusto se lo proporcionare contactarse con migo por e-mail.
mi correo es : [email protected].
mi correo es : [email protected].
No se si todavía tienes el juego de gato para c, si me lo pudieras mandar te lo agradecería mucho.
Hola entre de casualidad a esta pagina y veo que buscan el programa del gato, asi que yo soy de mexico y tengo dicho programa en turbo c++ version 3.0, si les interesa a alguien, escribanme con mucho gusto los podre ayudar.
hola...necesito el codigo fuente del juego del gato en c++ y el diagrama de flujo si alguien lo tiene por favor pasenmelo. gracias
heyt, por favor mandame el juego del gato por k lo necesito para la escuela.
me podrias mandar el codigo y tambien el diagrama de flujo
es para la escuela y no tengo idea de como se hace. gracias
es para la escuela y no tengo idea de como se hace. gracias
Necesito el juego del gato completo(codigo), espero que me lo puedas mandar por favor que sea antes del lunes, lo necesito para mi tarea.
hola, de ante mano gracias, no se si puedas mandarme el juego, si lo haces te lo agradecere muchisimo
te ruego me proporciones tu programa ya que me lo pidieron en la escuela y no tengo idea como se hace, me urge
te agradezco ds antemano el favor
te agradezco ds antemano el favor
les ruego si alguien tiene el juego del gato que me lo mande en C++ se los suplico... Gracias
mira: necesito el programa del gato para una practica de la escuela y quisiera saber si puedes proporcionarme alguna ayuda mandandome el codigo.
la verdad me urge...
atte. luz
la verdad me urge...
atte. luz
hola miguel:
se q seria mucha molestia pero te importaria mandarme el juego del gato en lenguaje c++??
lo q pasa es q es para un trabajo del dia 22 de nov. te lo agradeceria mucho.
gracias!!!!
se q seria mucha molestia pero te importaria mandarme el juego del gato en lenguaje c++??
lo q pasa es q es para un trabajo del dia 22 de nov. te lo agradeceria mucho.
gracias!!!!
hola
oye tendras el programa del gato si me lo puedes pasar es para presentar y no me sale
mucho agradecere
oye tendras el programa del gato si me lo puedes pasar es para presentar y no me sale
mucho agradecere
te escribo para pedirte de favor que me mandes el programa de el juego del gato, creeme que de verdad lo necesito, lo necesito para mañana o a mas tardar el jueves muy temprano. por tu gran ayuda GRACIAS.
por favor mandame el juego del gato,
si lo haces te regalo una cuenta en "Gmail."
si lo haces te regalo una cuenta en "Gmail."
Hola, porfa, si puedes enviarme el codigo del juego Gato, me sería de gran utilidad, ya que debo crearlo, y me ayudaría a saber como hacerlo.
Gracias
Gracias
mira pues yo lo estoy intentando hacer pero todavia tiene fallas si lo quieres y de algo te sirve mandame un mail va
porfas si puedes enviarme el programa del gato te lo agradecere mucho solo envialo a mi correo palomo_13_87@hotmail .com yo t lo agradecere por siempre si no es mucha molestia
Quisiera ver si me puedes pasar el juego del gato en c++, te doy las gracias de antemano
yo lo nesito para c++ pero orientado a objetos si no es mucha molestia podrias pasarmelo, gracias
mi mail es [email protected] enviamelo porfa gracias chao
oye te escribi y no me contestates te pido de favor me puedes ayudar con el diagrama y el analisis del juego del gato lo necesito para el lunes .
grasias por leer mi mensaje
grasias por leer mi mensaje
oye porfavor kisiera pedirte el juego del gato en java si lo tienes y me lo pudieras mandar por k tuve un pequeño problema kon el k hice y por esa razon me reprobaron y ahora lo tengo k volver hacer de otra manera pero no puedo aparte k soy komo kien dice komo principiante y lo hice kon if porfavor te lo pido y te lo ruego si pudieras mandarmelo lo antes posible komo para antes del 29 mayo del 2006 es mi fecha de entrega por favor
te agradecería mucho si me mandas tu programa del gato con el código, en realidad lo necesito mucho y lo necesito para el 23 de febrero, mil gracias.
oye...........kiero pedirte un favor....si el cuate este te manda o ya te mando el programa me lo podrias mandar.......me urge, prinicipalmente el codigo fuente, por favor. gracias.
me gustaria que me mandara el codigo del GATO para turbo C para tomarlo como modelo (intentare no piratearlo) y de ser posible que me dijera si estudia en que universidad ya que nos dijeron que el porfesor conoce el codigo del programa de algunas universidades
gracias
jose alejandro
gracias
jose alejandro
hola miguel, k pena molestar otra vez, pero yo no he recibido tu codigo.... yo te lo agradeceria y no lo dibulgare sin reconocimiento del desarrollador
hola como estas,espero que muy bien , primeramente permitame presentarme soy un alumno de la universidad y nesesito aclarar algunas dudas sobre este programa ya que me faltan pequeños detalles para finalizarlo, me gustaria pedirte una gran favor que me mandes el diagrama de flujo o el pseudocodigo de este programa lo mas pronto posible ya que el miercoles 2 de mayo tengo que entregar este trabajo, igual si un futuro ocupas de mi ayuda ya sabes que cuentas con ello.
de ante mano muchas gracias y espero contar con tu ayuda,,,gracias..
de ante mano muchas gracias y espero contar con tu ayuda,,,gracias..
Hola me llamo dulce y vi tu mensaje de que me puedes proporcionar el programa del gato si lo tienes mandamelo cuando antes . Lo necesito para el sabado 17 de enero es mi trabajo final y te agradeceria que me lo mandaras. De ante mano te doy mil gracias.
P.D espero contar kon tu ayuda
P.D espero contar kon tu ayuda
Hola:
yo estudio Ing. en Sistema Computacionales, tengo un proyecto que es el juego del gato, me gustaria mucho que me lo enviaras, espero que si puedas te lo pido porfavor.
gracias por tu amabilidad y por tu apoyo para nosotros en nuestra carrera.
yo estudio Ing. en Sistema Computacionales, tengo un proyecto que es el juego del gato, me gustaria mucho que me lo enviaras, espero que si puedas te lo pido porfavor.
gracias por tu amabilidad y por tu apoyo para nosotros en nuestra carrera.
Buenas, necisito el algoritmo en matlab del tres en raya, ¿podrias pasarmelo? Muchas gracias
Hola: Miguel, necesito urgentemente el codigo de el juego del gato, ya que es un proyecto que equivale a la calificacion del segundo parcial de la materia de inteligencia artificial, soy estudiante de lic. en sistemas computacionales de la UAEH campus tlahuelilpan
oye hazme un favor pasame el juego del gato porfa si lo tienes en el lenguaje c++ mejor gracias por tu comprension...
hola porfa me puedes prestar el guego lo antes posible, de antemano muxas gracias
hola, me interesaria saber como implemetaste el juego del gato, ya que yo lo hice, pero me lopiden usando arboles y no se como, entonces necesito saber como es el tuyo, gracias.
Hola
oye me podrias pasar el juego del gato lo requiero es para presentarlo en examen final y no me sale
mucho te lo agradecere
oye me podrias pasar el juego del gato lo requiero es para presentarlo en examen final y no me sale
mucho te lo agradecere
HOLA!
SOLO PARA PEDIRTE DE FAVOR SI PUEDES ENVIARME EL JUEGO DE GATO TE LO AGRADECERE MUCHISIMO. POR FAS.
LO NECESITOMLO MAS PRONTO POSIBLE , CLARO SI NO ES MUCHA MOLESTIA
SOLO PARA PEDIRTE DE FAVOR SI PUEDES ENVIARME EL JUEGO DE GATO TE LO AGRADECERE MUCHISIMO. POR FAS.
LO NECESITOMLO MAS PRONTO POSIBLE , CLARO SI NO ES MUCHA MOLESTIA
alguien me podria manmdar el algoritmo para programar el juego del gato???
hola: sabes me gustaria saber como esta construido tu juego ya que yo lo tengo pero no con arboles que es como me lo piden, gracias.
Hola miguel
Quisiera saber si pudieras enviarme el guego del gato de verdad que lo necesito para la clase. te lo agradesere mucho.
Quisiera saber si pudieras enviarme el guego del gato de verdad que lo necesito para la clase. te lo agradesere mucho.
te lo pido por favor amigo necesito saber si m podrias proporcionar el juego del gato en lenguaje c
hola miguel te escribo por si puedes mandarme el juego del gato es para un trabajo chao
lo antes posible por favor gracias
lo antes posible por favor gracias
hola miguel te agradeceria mucho si me pudieras mandar el juego del gato en turbo c por favor es ara un trabajo
chao gracias
chao gracias
hola bueno mira la razon por la que te escribo es por que necesito que me ayudes con el juego del gato programado en c espero que me puedas ayudar de antemano muchas gracias
Te agracería mucho me enviaras el codigo del juego del gato enC++.
gracias
gracias
en www.cmasmas.es.mn
www.cmasmas.es.mn
www.cmasmas.es.mn
www.cmasmas.es.mn
lo pueden encontrar
www.cmasmas.es.mn
www.cmasmas.es.mn
www.cmasmas.es.mn
lo pueden encontrar
me podrias proporsionar el codigo del gato por favor, si lo tienes en c mejor o en c++ no importa.. si quieres te puedo mandar el codigo fuente de algunos programas que tengo
gracias espero que me respondas pronto ya que lo nesecito..
gracias espero que me respondas pronto ya que lo nesecito..
por favor me podrias mandar el juego del gato es para entregar en un trabajo de la escuela y me super urge, te agradeceria mucho si me lo envias en esta semana (22 al 27 de noviembre)
mi correo es
[email protected]
mi correo es
[email protected]
ke rollo.... oie pues kisiera saber si me podrias mandar el juego del gato a mi tambien eske tego mil tarea para el Martes y no tengo tiempo para ahcer porfavor te lo agradeseria mucho
lo nesecito de inmediato gracias si tu no lo tienes
entoces alguien que lo tenga. mandelo
entoces alguien que lo tenga. mandelo
oye ne cesito el juego de el gato en lenguaje c para la materia de estructura de base de datos haber si me lo puedes enviar
Por favor si podrias pasarme el código del juego del gato, lo necesito para un examén.
Favor, de pasarlo, Gracias
Favor, de pasarlo, Gracias
oie necesito el pseudocodigo del juego del gato esque apenas llevo 1 mes estudiando eso y todavia no le entiendo bien porfas
envie un correo anterior creo que esta mal podrias mandarme tu programa del gato , por favor
hola es una tarea para algritmos la mia no me quedo y ya me desesperé plis ayuda!!!
Necesito este juego en C pero que ocupe metodos de busqueda (inteligencia artificial:anchura, profundidad o backtraking).....porfa, lo necesito urgente...gracias
a mi me sirve de mucho tu programada del juego de gato si fuieras tan amable de enviarmelo te lo agradeceria mucho.
[email protected]
[email protected]
por favor me pudieras mandar el codigo del juego del gato para turbo c te lo agradeceria
quisiera verlo ya que nunca pude hacerle una interfaz apropiada, gracias a mi incomprendido bgi de bc5.02
Hola!
Te molestaria mandarme el programa del Gato, por fa es un trabajo que necesito entregar el 7 de enero, te lo agradeceria mucho. POR FAVOR.
Bueno, espero tu respuesta.
GRACIAS.
Te molestaria mandarme el programa del Gato, por fa es un trabajo que necesito entregar el 7 de enero, te lo agradeceria mucho. POR FAVOR.
Bueno, espero tu respuesta.
GRACIAS.
Necesito el juego del gato , Me podrias mandar por favor si tienes tiempo te lo agradecere... gracias
Agradecería mucho si me mandas este juego, solo para entender el codigo
gracias migue
gracias migue
Por Favor!!! Por piedad!!! Ocupo el juego del gato, ya sea en visual o en c++. Es un caso de vida o reprobacion. Si aun lo tienes te agradeceria que me lo mandaras por favor. Gracias.
oyes por favor necesito el juego del gato te lo agradeceria si me envias el codigo fuente.
gracias.
gracias.
te agrdeceria mucho si porfa me enviaras el juego del gato ya que si no lo entrego para el 5 de abril dire adios amis estudios.
GRACIAS DE ANTE MANO
NECESITO EL JUEGO DEL GATO EN PASCAL, SI ME PUEDES AYUDAR .
ADEMAS NECESITO EL JUEGO DEL 21 DE CARTAS EN PASCAL O TAMBIEN LLAMADO BLAK JACK.
GRACIAS.
NECESITO EL JUEGO DEL GATO EN PASCAL, SI ME PUEDES AYUDAR .
ADEMAS NECESITO EL JUEGO DEL 21 DE CARTAS EN PASCAL O TAMBIEN LLAMADO BLAK JACK.
GRACIAS.
¡Hola Miguel!
estoy estudiando informática en san luis potosí y me dejaron programar el juego del gato, como no se mucho de programacion me gustaria pudieeras ayudarme.
Gracias Liliana
estoy estudiando informática en san luis potosí y me dejaron programar el juego del gato, como no se mucho de programacion me gustaria pudieeras ayudarme.
Gracias Liliana
#include <curses.h>
#define VERDADERO -2
#define FALSO -1
/* Cosas que puden estar en las casillas del tablero */
#define BOLA 1
#define TACHE 2
#define VACIO 0
/* Teclas */
#define ABAJO 258
#define ARRIBA 259
#define IZQUIERDA 260
#define DERECHA 261
#define ENTER 10
#define G 103
typedef int boolean;
void inicializar(int cuadricula[3][3]) {
int renglon, columna;
/* Limpiar pantalla */
clear();
/* Inicializar pantalla con funciones de ncurses */
initscr();
cbreak();
keypad(stdscr, TRUE);
noecho();
/* llenar matriz de espacios vacios */
for(renglon = 0; renglon < 3; renglon++)
for(columna = 0; columna < 3; columna++)
cuadricula[renglon][columna] = VACIO;
}
/* La funcion convertir coordenadas convierte las coordenadas de la pantalla a las de
la matriz, por ejemplo en la pantalla la casilla central esta en renglon 3 columna 3,
pero en la matriz la casilla central es 1, 1. */
void convertir_coordenadas(int *x, int *y) {
/* En la pantalla las casillas estan en las columnas 1, 3 y 5
y en la matriz en 0, 1 y 2 */
switch(*x) {
case(1) :
*x = 0;
break;
case(3) :
*x = 1;
break;
case(5) :
*x = 2;
}
/* En la pantalla las casillas estan en los renglones 1, 3 y 5
y en la matriz en 0, 1 y 2 */
switch(*y) {
case(1) :
*y = 0;
break;
case(3) :
*y = 1;
break;
case(5) :
*y = 2;
break;
}
}
/* Esta función determina si una casilla dada está ocupada*/
boolean esta_ocupado(int y, int x, int cuadricula[3][3]) {
convertir_coordenadas(&x, &y);
if(cuadricula[x][y] == VACIO)
/* Está vacÃa, por lo tanto es falso que está ocupada */
return FALSO;
else
/* Tiene algo adentro, por lo tanto es verdadero que está ocupada */
return VERDADERO;
}
void imp_marca(int marca, int y, int x, int cuadricula[3][3]) {
int tipo_marca;
/* Aqui tipo_marca se usa para la pantalla y marca para la matriz.
tipo_marca se convierte a O o X y marca se queda como un valor
numérico */
if(marca == TACHE) {
tipo_marca = 'X';
}
else
tipo_marca = 'O';
/* Poner la marca en la pantalla */
printw("%c", tipo_marca);
/* Poner la marca en la matriz */
convertir_coordenadas(&x, &y);
cuadricula[x][y] = marca;
}
int cambiar_marca(int marca) {
/* Si ya puso alguien una bola, la proxima sera tache y viceversa */
if(marca == TACHE)
return BOLA;
else
return TACHE;
}
void imp_rayas(void) {
printw(" ----- n");
printw("| | | |n");
printw(" ----- n");
printw("| | | |n");
printw(" ----- n");
printw("| | | |n");
printw(" ----- n");
}
boolean ganar(int marca, int cuadricula[3][3]) {
char tipo_marca;
/* Convertir marca a X ó O */
if(marca == BOLA)
tipo_marca = 'O';
else
tipo_marca = 'X';
/* Siempre que se comprueba que la primera casilla _NO_ esté vacÃa y luego que las
tres sean iguales, si no, puede darse el caso de que alguien gane porque las tres
estén vacÃas, ya que serÃan iguales (las tres = a 0)*/
/* --- Comprobar Filas ---*/
/* Fila 1 */
if(cuadricula[0][0] != VACIO &&
cuadricula[0][0] == cuadricula[1][0] &&
cuadricula[1][0] == cuadricula[2][0])
{
/* Dibujar lÃnea horizontal */
move(1, 1);
printw("-");
move(1, 3);
printw("-");
move(1, 5);
printw("-");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/* Fila 2 */
if(cuadricula[0][1] != VACIO &&
cuadricula[0][1] == cuadricula[1][1] &&
cuadricula[0][1] == cuadricula[2][1])
{
/* Dibujar lÃnea horizontal */
move(3, 1);
printw("-");
move(3, 3);
printw("-");
move(3, 5);
printw("-");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/* Fila 3 */
if(cuadricula[0][2] != VACIO &&
cuadricula[0][2] == cuadricula[1][2] &&
cuadricula[0][2] == cuadricula[2][2])
{
/* Dibujar lÃnea horizontal */
move(3, 1);
printw("-");
move(3, 3);
printw("-");
move(3, 5);
printw("-");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/*--- Comprobar Columnas ---*/
/* Columna 1*/
if(cuadricula[0][0] != VACIO &&
cuadricula[0][0] == cuadricula[0][1] &&
cuadricula[0][0] == cuadricula[0][2])
{
/*Dibujar linea vertical*/
move(1, 1);
printw("|");
move(3, 1);
printw("|");
move(5, 1);
printw("|");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/* Columna 2 */
if(cuadricula[1][0] != VACIO &&
cuadricula[1][0] == cuadricula[1][1] &&
cuadricula[1][0] == cuadricula[1][2])
{
/*Dibujar linea vertical*/
move(1, 3);
printw("|");
move(3, 3);
printw("|");
move(5, 3);
printw("|");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/* Columna 3 */
if(cuadricula[2][0] != VACIO &&
cuadricula[2][0] == cuadricula[2][1] &&
cuadricula[2][0] == cuadricula[2][2])
{
/*Dibujar linea vertical*/
move(1, 5);
printw("|");
move(3, 5);
printw("|");
move(5, 5);
printw("|");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/*--- Diagonales ---*/
/* Diagonal */
if(cuadricula[0][0] != VACIO &&
cuadricula[0][0] == cuadricula[1][1] &&
cuadricula[0][0] == cuadricula[2][2])
{
/*Dibujar , hay que colocar \ porque es para escape de caracteres*/
move(1, 1);
printw("\");
move(3, 3);
printw("\");
move(5, 5);
printw("\");
move(8, 0);
printw("¡¡¡ Ha ganado %c !!!", tipo_marca);
return VERDADERO;
}
/* Diagonal / */
if(cuadricula[2][0] != VACIO &&
cuadricula[2][0] == cuadricula[1][1] &&
cuadricula[2][0] == cuadricula[0][2])
{
/* Dibujar lÃnea / */
move(1, 5);
printw("/");
move(3, 3);
printw("/");
move(5, 1);
printw("/");
move(8, 0);
printw("¡¡¡ Ha ganado %c !!!", tipo_marca);
return VERDADERO;
}
/* Si no se dió ninguno de los casos de arriba regresa falso */
return FALSO;
}
int main(void) {
int tecla;
/* marca se refiere a una bola (0) o un tache (1) */
int marca_actual;
/* Variables para almacenar la posicion del cursor en la
pantalla, x es la columna y y el renglon */
int pos_x;
int pos_y;
/* Matriz de 3x3 (las 9 casillas del juego) para almacenar las bolas y los taches
en sus respectivas casillas según se vayan colocando en la pantalla por los
jugadores */
int cuadricula[3][3];
/* Número de casillas vacÃas, si nadie ha ganado y este número llega a 0, es empate.
disminuye cada vez que alguien coloca una marca */
int casillas_vacias;
boolean juego_terminado;
int renglon;
int columna;
/* Indica si hay que cambiar o no el mensaje "Juega Tal Persona"
que aparece en la parte inferior*/
boolean msj_juega_tal_actualizado;
do {
inicializar(cuadricula);
/* dibuja las rayas que delimitan las casillas en la pantalla*/
imp_rayas();
/* Inicializar algunas variables */
marca_actual = BOLA;
pos_x = 1;
pos_y = 1;
casillas_vacias = 9;
juego_terminado = FALSO;
msj_juega_tal_actualizado = FALSO;
/* Mover cursor a la posicion inicial */
move(pos_x, pos_y);
/* Ciclo que se dedica a leer las pulsaciones de las
teclas (entre otras cosas), esta es la parte
fundamental del programa */
while(juego_terminado == FALSO) {
/* Si el mensaje "Juega tal" está desactualizado
(esto sucede al principio del programa y después de que cada jugador coloca
su marca), hay que poner el nombre de la persona que está jugando este turno */
if(msj_juega_tal_actualizado == FALSO)
{
move(8, 0);
if(marca_actual == BOLA)
printw("Juega On");
else
printw("Juega Xn");
/* Ya cambió el mensaje, ahora ya está actualizado */
msj_juega_tal_actualizado = VERDADERO;
/* Regresar el cursor al lugar donde se puso la última marca, las
variables pos_x y pos_y no han cambiado desde entonces */
move(pos_y, pos_x);
}
tecla = getch();
switch(tecla) {
case(DERECHA) : {
if(pos_x == 5) {
pos_x = 1;
}else {
pos_x += 2;
}
move(pos_y, pos_x);
break;
}
case(IZQUIERDA) : {
if(pos_x == 1) {
pos_x = 5;
}
else {
pos_x -= 2;
}
move(pos_y, pos_x);
break;
}
case(ABAJO) : {
if(pos_y == 5) {
pos_y = 1;
}
else {
pos_y += 2;
}
move(pos_y, pos_x);
break;
}
case(ARRIBA) : {
if(pos_y == 1) {
pos_y = 5;
}
else {
pos_y -= 2;
}
move(pos_y, pos_x);
break;
}
case(ENTER) : {
/*Si está ocupada la casilla no se pone marca, si esta desocupada, se pone
y termina el turno del jugador */
if((esta_ocupado(pos_y, pos_x, cuadricula)) == FALSO) {
imp_marca(marca_actual, pos_y, pos_x, cuadricula);
casillas_vacias--;
juego_terminado = ganar(marca_actual, cuadricula);
/* Se acabaron las casillas y nadie ganó */
if(casillas_vacias == 0 && juego_terminado == FALSO) {
move(8, 0);
printw("¡¡¡ Gato !!!");
juego_terminado = VERDADERO;
}
/* cambiar de jugador, es decir, la proxima marca ya no va a ser bola sino tache
y viceversa */
marca_actual = cambiar_marca(marca_actual);
/* El mensaje "Juega X" o "Juega O" está desactualizado porque ya terminó
este turno */
msj_juega_tal_actualizado = FALSO;
}
break;
}
/* Sólo para depuracion */
case('a') : {
for(renglon = 0; renglon < 3; renglon++)
for(columna = 0; columna < 3; columna++)
printw("%d, %d: %dn", renglon, columna, cuadricula[renglon][columna]);
break;
}
/* Salir */
case('q') : {
endwin();
return 0;
break;
}
}
} //while
move(10, 0);
printw("- Para jugar de nuevo aprieta la letra Gn");
printw("- Para dejar de jugar aprieta cualquier otran");
tecla = getch();
} while(tecla == G);
endwin();
return 0;
}
#define VERDADERO -2
#define FALSO -1
/* Cosas que puden estar en las casillas del tablero */
#define BOLA 1
#define TACHE 2
#define VACIO 0
/* Teclas */
#define ABAJO 258
#define ARRIBA 259
#define IZQUIERDA 260
#define DERECHA 261
#define ENTER 10
#define G 103
typedef int boolean;
void inicializar(int cuadricula[3][3]) {
int renglon, columna;
/* Limpiar pantalla */
clear();
/* Inicializar pantalla con funciones de ncurses */
initscr();
cbreak();
keypad(stdscr, TRUE);
noecho();
/* llenar matriz de espacios vacios */
for(renglon = 0; renglon < 3; renglon++)
for(columna = 0; columna < 3; columna++)
cuadricula[renglon][columna] = VACIO;
}
/* La funcion convertir coordenadas convierte las coordenadas de la pantalla a las de
la matriz, por ejemplo en la pantalla la casilla central esta en renglon 3 columna 3,
pero en la matriz la casilla central es 1, 1. */
void convertir_coordenadas(int *x, int *y) {
/* En la pantalla las casillas estan en las columnas 1, 3 y 5
y en la matriz en 0, 1 y 2 */
switch(*x) {
case(1) :
*x = 0;
break;
case(3) :
*x = 1;
break;
case(5) :
*x = 2;
}
/* En la pantalla las casillas estan en los renglones 1, 3 y 5
y en la matriz en 0, 1 y 2 */
switch(*y) {
case(1) :
*y = 0;
break;
case(3) :
*y = 1;
break;
case(5) :
*y = 2;
break;
}
}
/* Esta función determina si una casilla dada está ocupada*/
boolean esta_ocupado(int y, int x, int cuadricula[3][3]) {
convertir_coordenadas(&x, &y);
if(cuadricula[x][y] == VACIO)
/* Está vacÃa, por lo tanto es falso que está ocupada */
return FALSO;
else
/* Tiene algo adentro, por lo tanto es verdadero que está ocupada */
return VERDADERO;
}
void imp_marca(int marca, int y, int x, int cuadricula[3][3]) {
int tipo_marca;
/* Aqui tipo_marca se usa para la pantalla y marca para la matriz.
tipo_marca se convierte a O o X y marca se queda como un valor
numérico */
if(marca == TACHE) {
tipo_marca = 'X';
}
else
tipo_marca = 'O';
/* Poner la marca en la pantalla */
printw("%c", tipo_marca);
/* Poner la marca en la matriz */
convertir_coordenadas(&x, &y);
cuadricula[x][y] = marca;
}
int cambiar_marca(int marca) {
/* Si ya puso alguien una bola, la proxima sera tache y viceversa */
if(marca == TACHE)
return BOLA;
else
return TACHE;
}
void imp_rayas(void) {
printw(" ----- n");
printw("| | | |n");
printw(" ----- n");
printw("| | | |n");
printw(" ----- n");
printw("| | | |n");
printw(" ----- n");
}
boolean ganar(int marca, int cuadricula[3][3]) {
char tipo_marca;
/* Convertir marca a X ó O */
if(marca == BOLA)
tipo_marca = 'O';
else
tipo_marca = 'X';
/* Siempre que se comprueba que la primera casilla _NO_ esté vacÃa y luego que las
tres sean iguales, si no, puede darse el caso de que alguien gane porque las tres
estén vacÃas, ya que serÃan iguales (las tres = a 0)*/
/* --- Comprobar Filas ---*/
/* Fila 1 */
if(cuadricula[0][0] != VACIO &&
cuadricula[0][0] == cuadricula[1][0] &&
cuadricula[1][0] == cuadricula[2][0])
{
/* Dibujar lÃnea horizontal */
move(1, 1);
printw("-");
move(1, 3);
printw("-");
move(1, 5);
printw("-");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/* Fila 2 */
if(cuadricula[0][1] != VACIO &&
cuadricula[0][1] == cuadricula[1][1] &&
cuadricula[0][1] == cuadricula[2][1])
{
/* Dibujar lÃnea horizontal */
move(3, 1);
printw("-");
move(3, 3);
printw("-");
move(3, 5);
printw("-");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/* Fila 3 */
if(cuadricula[0][2] != VACIO &&
cuadricula[0][2] == cuadricula[1][2] &&
cuadricula[0][2] == cuadricula[2][2])
{
/* Dibujar lÃnea horizontal */
move(3, 1);
printw("-");
move(3, 3);
printw("-");
move(3, 5);
printw("-");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/*--- Comprobar Columnas ---*/
/* Columna 1*/
if(cuadricula[0][0] != VACIO &&
cuadricula[0][0] == cuadricula[0][1] &&
cuadricula[0][0] == cuadricula[0][2])
{
/*Dibujar linea vertical*/
move(1, 1);
printw("|");
move(3, 1);
printw("|");
move(5, 1);
printw("|");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/* Columna 2 */
if(cuadricula[1][0] != VACIO &&
cuadricula[1][0] == cuadricula[1][1] &&
cuadricula[1][0] == cuadricula[1][2])
{
/*Dibujar linea vertical*/
move(1, 3);
printw("|");
move(3, 3);
printw("|");
move(5, 3);
printw("|");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/* Columna 3 */
if(cuadricula[2][0] != VACIO &&
cuadricula[2][0] == cuadricula[2][1] &&
cuadricula[2][0] == cuadricula[2][2])
{
/*Dibujar linea vertical*/
move(1, 5);
printw("|");
move(3, 5);
printw("|");
move(5, 5);
printw("|");
move(8, 0);
printw("¡¡¡ Ha ganado %c!!!", tipo_marca);
return VERDADERO;
}
/*--- Diagonales ---*/
/* Diagonal */
if(cuadricula[0][0] != VACIO &&
cuadricula[0][0] == cuadricula[1][1] &&
cuadricula[0][0] == cuadricula[2][2])
{
/*Dibujar , hay que colocar \ porque es para escape de caracteres*/
move(1, 1);
printw("\");
move(3, 3);
printw("\");
move(5, 5);
printw("\");
move(8, 0);
printw("¡¡¡ Ha ganado %c !!!", tipo_marca);
return VERDADERO;
}
/* Diagonal / */
if(cuadricula[2][0] != VACIO &&
cuadricula[2][0] == cuadricula[1][1] &&
cuadricula[2][0] == cuadricula[0][2])
{
/* Dibujar lÃnea / */
move(1, 5);
printw("/");
move(3, 3);
printw("/");
move(5, 1);
printw("/");
move(8, 0);
printw("¡¡¡ Ha ganado %c !!!", tipo_marca);
return VERDADERO;
}
/* Si no se dió ninguno de los casos de arriba regresa falso */
return FALSO;
}
int main(void) {
int tecla;
/* marca se refiere a una bola (0) o un tache (1) */
int marca_actual;
/* Variables para almacenar la posicion del cursor en la
pantalla, x es la columna y y el renglon */
int pos_x;
int pos_y;
/* Matriz de 3x3 (las 9 casillas del juego) para almacenar las bolas y los taches
en sus respectivas casillas según se vayan colocando en la pantalla por los
jugadores */
int cuadricula[3][3];
/* Número de casillas vacÃas, si nadie ha ganado y este número llega a 0, es empate.
disminuye cada vez que alguien coloca una marca */
int casillas_vacias;
boolean juego_terminado;
int renglon;
int columna;
/* Indica si hay que cambiar o no el mensaje "Juega Tal Persona"
que aparece en la parte inferior*/
boolean msj_juega_tal_actualizado;
do {
inicializar(cuadricula);
/* dibuja las rayas que delimitan las casillas en la pantalla*/
imp_rayas();
/* Inicializar algunas variables */
marca_actual = BOLA;
pos_x = 1;
pos_y = 1;
casillas_vacias = 9;
juego_terminado = FALSO;
msj_juega_tal_actualizado = FALSO;
/* Mover cursor a la posicion inicial */
move(pos_x, pos_y);
/* Ciclo que se dedica a leer las pulsaciones de las
teclas (entre otras cosas), esta es la parte
fundamental del programa */
while(juego_terminado == FALSO) {
/* Si el mensaje "Juega tal" está desactualizado
(esto sucede al principio del programa y después de que cada jugador coloca
su marca), hay que poner el nombre de la persona que está jugando este turno */
if(msj_juega_tal_actualizado == FALSO)
{
move(8, 0);
if(marca_actual == BOLA)
printw("Juega On");
else
printw("Juega Xn");
/* Ya cambió el mensaje, ahora ya está actualizado */
msj_juega_tal_actualizado = VERDADERO;
/* Regresar el cursor al lugar donde se puso la última marca, las
variables pos_x y pos_y no han cambiado desde entonces */
move(pos_y, pos_x);
}
tecla = getch();
switch(tecla) {
case(DERECHA) : {
if(pos_x == 5) {
pos_x = 1;
}else {
pos_x += 2;
}
move(pos_y, pos_x);
break;
}
case(IZQUIERDA) : {
if(pos_x == 1) {
pos_x = 5;
}
else {
pos_x -= 2;
}
move(pos_y, pos_x);
break;
}
case(ABAJO) : {
if(pos_y == 5) {
pos_y = 1;
}
else {
pos_y += 2;
}
move(pos_y, pos_x);
break;
}
case(ARRIBA) : {
if(pos_y == 1) {
pos_y = 5;
}
else {
pos_y -= 2;
}
move(pos_y, pos_x);
break;
}
case(ENTER) : {
/*Si está ocupada la casilla no se pone marca, si esta desocupada, se pone
y termina el turno del jugador */
if((esta_ocupado(pos_y, pos_x, cuadricula)) == FALSO) {
imp_marca(marca_actual, pos_y, pos_x, cuadricula);
casillas_vacias--;
juego_terminado = ganar(marca_actual, cuadricula);
/* Se acabaron las casillas y nadie ganó */
if(casillas_vacias == 0 && juego_terminado == FALSO) {
move(8, 0);
printw("¡¡¡ Gato !!!");
juego_terminado = VERDADERO;
}
/* cambiar de jugador, es decir, la proxima marca ya no va a ser bola sino tache
y viceversa */
marca_actual = cambiar_marca(marca_actual);
/* El mensaje "Juega X" o "Juega O" está desactualizado porque ya terminó
este turno */
msj_juega_tal_actualizado = FALSO;
}
break;
}
/* Sólo para depuracion */
case('a') : {
for(renglon = 0; renglon < 3; renglon++)
for(columna = 0; columna < 3; columna++)
printw("%d, %d: %dn", renglon, columna, cuadricula[renglon][columna]);
break;
}
/* Salir */
case('q') : {
endwin();
return 0;
break;
}
}
} //while
move(10, 0);
printw("- Para jugar de nuevo aprieta la letra Gn");
printw("- Para dejar de jugar aprieta cualquier otran");
tecla = getch();
} while(tecla == G);
endwin();
return 0;
}
mi correo es [email protected], podria mandarme el codigo porfa
Por favor quisiera ke me mandaras el juego, lo necesito para una tarea de programacion. Gracias
Por favor enviame el juego del Gato a mi E-mail, [email protected]
Hola soy Sandy, porfavor me podrias enviar el juego del gato lo necesito de urge, porfa te lo agradesería.
hola migue soy de guadalajara jalisco y tengo un problema tengo como rpoyecto el juego del gato y e intentado de mi formas y no me sale te agradeceria que me lo pasaras de verdad no sabes como lo necesito... de antemano muchas gracias
HOLA MIGUEL, QUISIERA QUE ME ENVIARAS COPIA DEL JUEGO DEL GATO, QUISIERA VER TU FORMA DE MANEJAR EL AMBIENTE GRAFICO EN C++, GRACIAS DE ANTEMANO... MI CORREO ES [email protected]
oye te quisiera pedir un favor, porfavor necesito el juego del gato para la escuela y quisiera por piedad que me lo mandaras ya que si no reprobare el semestre, te agradezco que leas este mensaje y muchas gracias.
atte:
rigo
atte:
rigo
tengo interes por saber como es el pseudocodigo del juego del gato es ina investigacion de la U. por faor suministrenme la información. Gracias.
Porfavor, apelo a tu amabilidad, de que me envíes el juego del gato, lo antes posible, claro si no es molestia, te lo agradecería mucho.
Ingrid....
Ingrid....
Oye miguel angel por favor mandame el juego del gato lo necesito para mañana no seas ojeis si no lo presento voy a reprobar
SI TODAVIA CUENTAS CON EL CODIGO Y EL ALGORITMO DEL JUEGO DEL GATO POR FAVOR ENVIAMELO GRACIAS
oye miguel angel mi correo es [email protected]
Hola, buen dia, me interesaria si me puedes facilitar el codigo del juego del gato, pues se me hace muy interesante. Te lo agradeceria muchisimo..!!!!
ToT yo necesito el juego del gato pero sin arreglos nada de matrices solo con funciones stdio.h. el time.h y cosas lo mas chanta posible tengo solo una parte y ya nose que mas hacer
