Juego 3 en raya (juego del gato)

Moderador: ivancp

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

Juego 3 en raya (juego del gato)

Notapor 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
  1.  

  2. #include <stdio.h>

  3. void main ()

  4. {

  5.         int jugador(1),error,empate(0),ganar(0);

  6.         char c1('1'),c2('2'),c3('3'),c4('4'),c5('5'),c6('6'),c7('7'),c8('8'),c9('9'),tiro,marca,respuesta('y');

  7.           do{                                                                                                   //Crea El Ciclo

  8.           error=1;

  9.           printf("\n %c | %c | %c\n",c1,c2,c3);                                 //Imprime el Tablero

  10.       printf("---+---+---\n");

  11.       printf("\n %c | %c | %c\n",c4,c5,c6);

  12.       printf("---+---+---\n");

  13.       printf("\n %c | %c | %c\n\n",c7,c8,c9);

  14.           if(jugador==1)                                                                                //Establece la marca del jugador

  15.           {marca='X';}

  16.           else

  17.           {marca='O';}

  18.           printf("En que Casilla Deseas Tirar Jugador %d:\n",jugador);

  19.           fflush(stdin);

  20.           scanf("%c",&tiro);

  21.           if (tiro=='1' && c1=='1') {c1=marca;}                         //Checa las Condiciones para poder tirar

  22.           else if (tiro=='2' && c2=='2') {c2=marca;}

  23.           else if (tiro=='3' && c3=='3') {c3=marca;}

  24.           else if (tiro=='4' && c4=='4') {c4=marca;}

  25.           else if (tiro=='5' && c5=='5') {c5=marca;}

  26.           else if (tiro=='6' && c6=='6') {c6=marca;}

  27.           else if (tiro=='7' && c7=='7') {c7=marca;}

  28.           else if (tiro=='8' && c8=='8') {c8=marca;}

  29.           else if (tiro=='9' && c9=='9') {c9=marca;}

  30.           else {printf("Error! Movimiento No Valido\n"); error=2;}

  31.       //Checa Si alguien gano

  32.                   if(c1=='X'||c1=='O')

  33.           {

  34.                     if(c2==c1&&c3==c1)

  35.                      {ganar=1;}

  36.                     if(c4==c1&&c7==c1)

  37.                      {ganar=1;}

  38.           }

  39.           if(c5=='X'||c5=='O')

  40.           {

  41.                    if (c1 == c5 && c9 == c5)

  42.                            {ganar=1;}

  43.                    if (c2 == c5 && c8 == c5)

  44.                            {ganar=1;}

  45.                    if (c4 == c5 && c6 == c5)

  46.                            {ganar=1;}

  47.                    if (c3 == c5 && c7 == c5)

  48.                            {ganar=1;}

  49.           }

  50.           if(c9=='X'||c9=='O')

  51.           {

  52.                    if (c6 == c9 && c3 == c9)

  53.                            {ganar=1;}

  54.                    if (c7 == c9 && c8 == c9)

  55.                           {ganar=1;}

  56.           }

  57.         if (c1 != '1' && c2 != '2' && c3 != '3' &&

  58.         c4 != '4' && c5 != '5' && c6 != '6' &&

  59.         c7 != '7' && c8 != '8' && c9 != '9')

  60.         {empate=1;}

  61.           if (ganar==1||empate==1)

  62.         {

  63.           if (ganar==1)

  64.           {

  65.           printf("Jugador: %d Gana!\n\n",jugador);

  66.           printf("\n %c | %c | %c\n",c1,c2,c3);                                

  67.       printf("---+---+---\n");

  68.       printf("\n %c | %c | %c\n",c4,c5,c6);

  69.       printf("---+---+---\n");

  70.       printf("\n %c | %c | %c\n\n",c7,c8,c9);

  71.           }

  72.           if (empate==1)

  73.         {

  74.           printf("Rayos Nadie Gano!\n",jugador);

  75.           printf("\n %c | %c | %c\n",c1,c2,c3);                                

  76.       printf("---+---+---\n");

  77.       printf("\n %c | %c | %c\n",c4,c5,c6);

  78.       printf("---+---+---\n");

  79.       printf("\n %c | %c | %c\n\n",c7,c8,c9);

  80.         }

  81.           printf("Deseas Jugar de Nuevo: Y/N ?\n");

  82.           fflush(stdin);

  83.           scanf("%c",&respuesta);

  84.           if (respuesta=='y'||respuesta=='Y')

  85.           {

  86.                   empate=0;

  87.                   jugador=2;

  88.                   ganar=0;

  89.                   c1='1';

  90.                   c2='2';

  91.                   c3='3';

  92.                   c4='4';

  93.                   c5='5';

  94.                   c6='6';

  95.                   c7='7';

  96.                   c8='8';

  97.                   c9='9';

  98.           }

  99.         }

  100.           if(error==1)                                                                                  //Si Hay un error jugador no cambia

  101.           {

  102.                   if (jugador==1)

  103.                                 {jugador=2;}

  104.                   else

  105.                                 {jugador=1;}

  106.           }

  107.   }while(respuesta=='y'||respuesta=='Y');

  108. }

  109.  

safkevin
Novato
Novato
 
Mensajes: 1
Registrado: Vie Jul 02, 2010 2:35 pm


Re: Juego 3 en raya (juego del gato)

Notapor 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.
Avatar de Usuario
waltico
Colaborador
Colaborador
 
Mensajes: 183
Registrado: Sab Jun 21, 2003 4:04 pm
Ubicación: Puno



    

Volver a C/C++

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados