Jogo da velha
Publicado por Valter 14/10/2008
[ Hits: 10.812 ]
Um código bem simples do jogo da velha, mas para quem está iniciando em C é bem interressante.
#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);
}
Crivo de Eratóstenes Simples em C
File Browser: Crie sua Nuvem Pessoal Privada
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
Otimizando o uso de Memória RAM no Ubuntu com zRAM
Usando alias no Terminal para comandos longos
Simplificando o manual do terminal no Ubuntu 26.04
Bloqueio da instalação e reinstalação do Snap (snapd) no Ubuntu
VoidBR - Void Linux adaptado ao Brasil. (0)
Continuando meus tópicos anteriores (11)









