Juego 3 en raya (juego del gato)

Temas sobre programacion en C/C++ (no Visual C++)

Moderador:ivancp

safkevin
Novato
Novato
Mensajes:1
Registrado:Vie Jul 02, 2010 2:35 pm
Juego 3 en raya (juego del gato)

Mensaje por safkevin » Vie Jul 02, 2010 2:50 pm

Bueno pues aqui les traigo el juego de 3 en raya se aceptan mejoras y mi proximo proyecto sera ponerle humano vs maquina.

Código: Seleccionar todo

#include <stdio.h>
void main ()
{
	int jugador(1),error,empate(0),ganar(0);
	char c1('1'),c2('2'),c3('3'),c4('4'),c5('5'),c6('6'),c7('7'),c8('8'),c9('9'),tiro,marca,respuesta('y');
	  do{													//Crea El Ciclo
	  error=1;
	  printf("\n %c | %c | %c\n",c1,c2,c3);					//Imprime el Tablero
      printf("---+---+---\n");
      printf("\n %c | %c | %c\n",c4,c5,c6);
      printf("---+---+---\n");
      printf("\n %c | %c | %c\n\n",c7,c8,c9);
	  if(jugador==1)										//Establece la marca del jugador
	  {marca='X';}
	  else
	  {marca='O';}
	  printf("En que Casilla Deseas Tirar Jugador %d:\n",jugador);
	  fflush(stdin);
	  scanf("%c",&tiro);
	  if (tiro=='1' && c1=='1') {c1=marca;}				//Checa las Condiciones para poder tirar
	  else if (tiro=='2' && c2=='2') {c2=marca;}
	  else if (tiro=='3' && c3=='3') {c3=marca;}
	  else if (tiro=='4' && c4=='4') {c4=marca;}
	  else if (tiro=='5' && c5=='5') {c5=marca;}
	  else if (tiro=='6' && c6=='6') {c6=marca;}
	  else if (tiro=='7' && c7=='7') {c7=marca;}
	  else if (tiro=='8' && c8=='8') {c8=marca;}
	  else if (tiro=='9' && c9=='9') {c9=marca;}
	  else {printf("Error! Movimiento No Valido\n"); error=2;} 
      //Checa Si alguien gano
		  if(c1=='X'||c1=='O')
	  {
		    if(c2==c1&&c3==c1)
		     {ganar=1;}
		    if(c4==c1&&c7==c1)
		     {ganar=1;}
	  }
	  if(c5=='X'||c5=='O')
	  {
		   if (c1 == c5 && c9 == c5)
			   {ganar=1;}
		   if (c2 == c5 && c8 == c5)
			   {ganar=1;}
		   if (c4 == c5 && c6 == c5)
			   {ganar=1;}
		   if (c3 == c5 && c7 == c5)
			   {ganar=1;}
	  }
	  if(c9=='X'||c9=='O')
	  {
		   if (c6 == c9 && c3 == c9)
			   {ganar=1;}
		   if (c7 == c9 && c8 == c9)
			  {ganar=1;}
	  }
	if (c1 != '1' && c2 != '2' && c3 != '3' &&
	c4 != '4' && c5 != '5' && c6 != '6' &&
	c7 != '7' && c8 != '8' && c9 != '9')
	{empate=1;}
	  if (ganar==1||empate==1)
	{
	  if (ganar==1)
	  {
	  printf("Jugador: %d Gana!\n\n",jugador);
	  printf("\n %c | %c | %c\n",c1,c2,c3);					
      printf("---+---+---\n");
      printf("\n %c | %c | %c\n",c4,c5,c6);
      printf("---+---+---\n");
      printf("\n %c | %c | %c\n\n",c7,c8,c9);
	  }
	  if (empate==1)
	{
	  printf("Rayos Nadie Gano!\n",jugador);
	  printf("\n %c | %c | %c\n",c1,c2,c3);					
      printf("---+---+---\n");
      printf("\n %c | %c | %c\n",c4,c5,c6);
      printf("---+---+---\n");
      printf("\n %c | %c | %c\n\n",c7,c8,c9);
	}
	  printf("Deseas Jugar de Nuevo: Y/N ?\n");
	  fflush(stdin);
	  scanf("%c",&respuesta);
	  if (respuesta=='y'||respuesta=='Y')
	  {
		  empate=0;
		  jugador=2;
		  ganar=0;
		  c1='1';
		  c2='2';
		  c3='3';
		  c4='4';
		  c5='5';
		  c6='6';
		  c7='7';
		  c8='8';
		  c9='9';
	  }
	}
	  if(error==1)											//Si Hay un error jugador no cambia
	  {
		  if (jugador==1)
				{jugador=2;}
		  else
				{jugador=1;}
	  }
  }while(respuesta=='y'||respuesta=='Y');
}

Avatar de Usuario
waltico
Colaborador
Colaborador
Mensajes:183
Registrado:Sab Jun 21, 2003 4:04 pm
Ubicación:Puno
Contactar:

Re: Juego 3 en raya (juego del gato)

Mensaje por waltico » Jue Mar 31, 2011 12:02 pm

Comentanle arriba bajo que esta compilado... por lo visto esta en C++ y que version tiene. Slds.

Responder