Sunteți pe pagina 1din 6

COLEGIO DE EDUCACION PROFESIONAL TECNICA DEL ESTADO DE

VERACRUZ
PLANTEL Lic. Jess Reyes Heroles #165


UNIDAD: 2


NOMBRE DEL ALUMNO: MATRCULA:
Martha L. Lorenzo Cervantes 111650276- 4

DOCENTE:
ING. MIGUEL ANGEL RAMOS GRANDE


MDULO:
PROGRAMACION DE VIDEOJUEGOS

CARRERA: GRUPO: SEMESTRE:
Profesional Tcnico en Informtica 603 6




TITULO DE LA INVESTIGACIN O TAREA:

PRACTICA NUMERO 2




Juego del Gato y el Ratn





OBSERVACIONES:












CALIFICACIN

Lo primero que hice fue abrir el programa darle clic en
Archivo, Nuevo, Proyecto







Depues le puse un nombre y aceptar.






Ahora introducimos las
librerias que se ocuparan

Tambien se declaran su variables





Una vez terminado el programa lo ejecutamos nos aparecer esta pantalla y le ponemos un
nombre y listo








Por ultimo solo checamos que funcione as como lo muestran las imgenes de abajo









Ahora Como Ven Este Es El Cdigo Complete Del Gato Y El Ratn:

#include <stdio.h>
#include <stdlib.h> Estas son la libreras
#include <sys/time.h>
/* Casillas:
6 |7 |8 Valores:
--+--+-- 'X' = -1 Computadora
3 |4 |5 ' ' = 0
--+--+-- 'O' = 1 Usuario
0 |1 |2
*/
int c[9]={0,0,0,0,0,0,0,0,0}, turno, jugador;
char denuevo;
char tirada(int i); /*Necesaria en print_gato, retorna 'X', 'O' o ' '*/
int ganador(); /*Deduce si hay un ganador, regresa -1, 0 o 1*/
int volado(); /*Regresa 1 o 0 al azar*/
void print_gato(); /*Imprime el tablero de Gato*/
void turno_jugador();
void turno_computadora();

char tirada(int i){
switch (i){
case (-1):
return 'X';
break;
case (1):
return 'O';
break;
default:
return ' ';
}
}
void print_gato(){
printf("\n %c |%c |%c\n --+--+--\n %c |%c |%c\n --+--+--\n %c |%c |%c\n", tirada(c[6]),
tirada(c[7]), tirada(c[8]), tirada(c[3]), tirada(c[4]), tirada(c[5]), tirada(c[0]), tirada(c[1]),
tirada(c[2]));
}
int volado(){
time_t t;
srand(time(&t));
return rand()%2;
}
int ganador(){
if ((c[0]+c[1]+c[2]==3)|| (c[3]+c[4]+c[5]==3)|| (c[6]+c[7]+c[8]==3)|| (c[6]+c[3]+c[0]==3)||
(c[7]+c[4]+c[1]==3)|| (c[8]+c[5]+c[2]==3)|| (c[6]+c[4]+c[2]==3)|| (c[8]+c[4]+c[0]==3)) return 1;
else if ((c[0]+c[1]+c[2]==-3)|| (c[3]+c[4]+c[5]==-3)|| (c[6]+c[7]+c[8]==-3)|| (c[6]+c[3]+c[0]==-3)||
(c[7]+c[4]+c[1]==-3)|| (c[8]+c[5]+c[2]==-3)|| (c[6]+c[4]+c[2]==-3)|| (c[8]+c[4]+c[0]==-3)) return -1;
else return 0;
}
void turno_jugador(){
int quieres;
printf("\nEs tu turno, En cul casilla quieres tirar? [1-9] ");
scanf("%d",&quieres);
if ((quieres>9)|| (quieres<1)|| (c[quieres-1]!=0)){
do{
printf("\nNo puedes tirar ah, intenta en otra casilla: [1-9] ");
fflush(stdin);
scanf("%d",&quieres);
}while ((quieres>9)|| (quieres<1)|| (c[quieres-1]!=0));
}
c[quieres-1]=1;
jugador = 0;
}
void turno_computadora(){
int quiero;
time_t t;
printf("\nEs mi turno, elijo la casilla... ");
do{
srand(time(&t));
quiero=rand()%9;
}while (c[quiero]!=0);
printf("%d\n", quiero + 1);
c[quiero]=-1;
jugador = 1;
}
int main(){
int h;
printf("\nJuguemos GATO!\n\nLas casillas estn enumeradas as:\n 7 |8 |9\n --+--+--\n 4 |5 |6\n
--+--+--\n 1 |2 |3\n");
do{
printf("\nUn volado y...\n");
jugador = volado(); /*El primer turno se decide por medio de un volado*/
turno = 0;
do{
turno++;
if (jugador) turno_jugador(); else turno_computadora();
print_gato();
}while ((!ganador())&&(turno<=8));
switch (ganador()){
case 0:
printf("\nQu empate!\n");
break;
case 1:
printf("\nHas ganado!\n");
break;
case -1:
printf("\nYo gan!\n");
break;
}
printf("Quieres jugar de nuevo? (s o n) ");
scanf("%s", &denuevo);
if (denuevo>=97) denuevo-=32;
if ((denuevo!='S')&&(denuevo!='N'))printf( "\nTomar eso como un no\n");
for (h=0;h<=8;h++) c[h]=0;
}while (denuevo=='S');
return 0;
}

S-ar putea să vă placă și