Jogo da velha

Publicado por Valter 14/10/2008

[ Hits: 10.422 ]

Download Jogo da Velha.c




Um código bem simples do jogo da velha, mas para quem está iniciando em C é bem interressante.

  



Esconder código-fonte

#include<stdio.h>
#include<conio.h>
#define Y 3

int main(void)
{
    unsigned char Matriz[Y][Y];
    const int TRUE = 1;
    const char O='O', X='X';
    int l,j,i;
    for(i=0;i<Y;i++)
        for(j=0;j<Y;j++)
            Matriz[i][j]=' ';

    while(TRUE)
    {
        printf("\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0  JOGO DA VELHA"
               "  \xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\xB0\n\n\n\n");
        for(i=0;i<Y;i++)
        {
            printf("\t\t     %c \xBA %c \xBA %c\n",Matriz[i][0],Matriz[i][1],Matriz[i][2]);
            if(i<Y-1)
            {
                printf("\t\t    ÍÍÍ\xCEÍÍÍ\xCEÍÍÍ\n");
            }
        }
        if((Matriz[0][0]==O && Matriz[0][1]==O && Matriz[0][2]==O)||
           (Matriz[1][0]==O && Matriz[1][1]==O && Matriz[1][2]==O)||
           (Matriz[2][0]==O && Matriz[2][1]==O && Matriz[2][2]==O)||
           (Matriz[0][0]==O && Matriz[1][0]==O && Matriz[2][0]==O)||
           (Matriz[0][1]==O && Matriz[1][1]==O && Matriz[2][1]==O)||
           (Matriz[0][2]==O && Matriz[1][2]==O && Matriz[2][2]==O)||
           (Matriz[0][0]==O && Matriz[1][1]==O && Matriz[2][2]==O)||
           (Matriz[0][2]==O && Matriz[1][1]==O && Matriz[2][0]==O))
        {
            printf("\n\n\n\n\a\t\tJogador 1, VOCE VENCEU!!!");
            break;
        }
        if((Matriz[0][0]==X && Matriz[0][1]==X && Matriz[0][2]==X)||
           (Matriz[1][0]==X && Matriz[1][1]==X && Matriz[1][2]==X)||
           (Matriz[2][0]==X && Matriz[2][1]==X && Matriz[2][2]==X)||
           (Matriz[0][0]==X && Matriz[1][0]==X && Matriz[2][0]==X)||
           (Matriz[0][1]==X && Matriz[1][1]==X && Matriz[2][1]==X)||
           (Matriz[0][2]==X && Matriz[1][2]==X && Matriz[2][2]==X)||
           (Matriz[0][0]==X && Matriz[1][1]==X && Matriz[2][2]==X)||
           (Matriz[0][2]==X && Matriz[1][1]==X && Matriz[2][0]==X))
        {
            printf("\n\n\n\n\a\t\tJogador 2, VOCE VENCEU!!!");
            break;
        }
        if(l==9)
        {
            printf("PARTIDA EMPATADA");
            break;
        }
        printf("\n\n\n\n\n\n\n\n\n\n\n\nINSIRA AS COORDENADAS, ");
        if(l%2)printf("PLAYER 2\nLINHA: ");
        else printf("PLAYER 1\nLINHA: ");

        scanf("%d",&i);
        printf("COLUNA: ");
        scanf("%d",&j);
        if(Matriz[i-1][j-1]==' ')
        {
            if(l%2)Matriz[i-1][j-1]=X;
            else Matriz[i-1][j-1]=O;
            l++;
        }
    }
    getch();
    return(0);
}

Scripts recomendados

[C] Ponteiros e strings

Funções, Ponteiros e Struct

Como fazer raízes a partir de 2 e 3 no c.

Mostrando as palavras digitadas ao contrário!

Exemplo de gabaritos de função


  

Comentários
[1] Comentário enviado por pedro23111 em 14/10/2008 - 14:36h

Programa simples. Teoricamente o jogo da velha tem o potencial de ser bem didático aos iniciantes, mas caso seja feito (caprichado).
Acho legal a iniciativa desse tipo de coisa, fazer programinhas com fins didáticos.
Mas dá pra melhorar muito esse cód. fonte, não leva a mal, apenas tentando ajudar. ;)

Abraços,
Pedro Fernandes Steimbruch.

[2] Comentário enviado por ronneesley em 10/04/2009 - 00:25h

Olá, fiz um jogo da velha online com inteligência artificial simples, aqui o link direto http://analistasi.com.br/?p=225


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts