Ayuda

Iniciado por mathias_vg, 6 Junio 2013, 21:18 PM

0 Miembros y 1 Visitante están viendo este tema.

mathias_vg

leosansan como estas?

Eh estado tratando de solucionar los problemas que me marcaste, mas precisamente que me imprima hacia arriba las jugadas pero no lo eh lo grado me podrias decir en que estoy fallando?

Cuelgo el codigo a continuacion

Muchas gracias


#include <stdio.h>
#include <stdlib.h>
int main()
{
   
    char d;
    bool termino = false;
    int n=0,i=0,j=0,dim1=0,dim2=0,resto=1,contador=1;
    printf("\n\n\n     JUEGO CUATRO EN LINEA\n\n\n\n\n\n\n");
    printf("       Nueva partida (S/N)  ");
    scanf("%c",&d);
    printf("\n");
    printf("       JUGADOR 1  \n");
    printf("       JUGADOR 2    ");
    switch (d)
    {
        case 'N':case 'n':
        termino = true;
        break;
         default: printf("\n\nError");
        break;
        case 'S': case's':
    printf("\n\n\n\nIngresa la dimension del tablero de juego:\n\n");
    scanf (" \n%d",&dim2);
    dim1 = dim2;
    char matriz[dim1][dim2];
    do
    {
        for (i=1;i<=dim1;i++)
        {
            for (j=1;j<=dim2;j++)
            {
                if ((matriz[i][j]!='X') && (matriz[i][j]!='O'))
                {
                    printf("%c ",'.');
                }
                else
                {
                    printf ("%c ",'X');
                }
            }
            printf("\n");
        }
        while (resto<=(dim2*dim2))
        {
        if ((resto%2)==0)
        {
        printf("\nJuega JUGADOR 1: ");
        scanf (" %d",&n);
            matriz[dim1][n]='O';
            printf ("%c\n",matriz[dim1][n]);
            for (i=1;i<=dim1;i++)
            {
            for (j=1;j<=dim2;j++)
            {
                  if ((matriz[i][j]=='X') || (matriz[i][j]=='O'))
                {
                   matriz[dim1-1][n]='O';   /* corregir */
                }
                if ((matriz[i][j]!='X') && (matriz[i][j]!='O'))
                {
                    printf("%c ",'.');
                }
                else
                {
                    if ((matriz[i][j]!='X') && (matriz[i][j]!='.'))
                    {
printf ("%c ",'O');
                    }
else
{
         printf ("%c ",'X');
                    }
                }
            }
            printf("\n");
        }
    }
        else
        {
        printf("\nJuega JUGADOR 2: ");
            scanf (" %d",&n);
            matriz[dim1][n]='X';
            printf ("%c\n",matriz[dim1][n]);
            for (i=1;i<=dim1;i++)
        {
            for (j=1;j<=dim2;j++)
            {
                 if ((matriz[i][j]=='X') || (matriz[i][j]=='O'))
                {
                   matriz[dim1-1][n]='X';   /* corregir */
                }
                if ((matriz[i][j]!='X') && (matriz[i][j]!='O'))
                {
                    printf("%c ",'.');
                }
                else
                {
                if ((matriz[i][j]!='X') && (matriz[i][j]!='.'))
                {
printf ("%c ",'O');
                }
else
{
     printf ("%c ",'X');
                    }
                }
                   
            }
            printf("\n");
        }
        }
        resto++;
        }
        printf("EMPATE\n\n");
        system("PAUSE");
     }while (1);
    return 0;
    break;
       
    }
    while (!termino);
}


leosansan

#1
¡No deberías abrir un tema nuevo!, bastaba continuar posteando en el otro que es donde te he dejado un pequeño avance.

Mira ver si puedes eliminar este tema, no tiene sentido tener dos abiertos con lo mismo.

Yo seguiré respondiéndote en el otro.


Saluditos! .... ..