Jogo Da Velha Em C
Ensaios: Jogo Da Velha Em C. Pesquise 862.000+ trabalhos acadêmicosPor: nildomacena • 4/8/2014 • 1.299 Palavras (6 Páginas) • 561 Visualizações
#include <stdio.h>
#include <stdlib.h>
char matrix[3][3];
char check(void);
void init(void);
void get_player(void);
void get_computer(void);
void display(void);
void get_radom(void);
int main()
{
char done;
printf("Este é o jogo da velha\n");
printf("Você jogara contra o computador.\n");
done = ' ';
init();
do {
display();
get_player();
done = check();
if (done != ' ') break;
get_computer();
done = check();
} while (done == ' ');
if (done == 'X') printf("Você Ganhou!\n");
else printf("Você Perdeu!\n");
display();
return 0;
}
void init(void)
{
int x, y;
for(x=0; x<3; ++x)
for(y=0; y<3; ++y) matrix[x][y] = ' ';
}
void get_player(void)
{
int x, y;
printf("Digite as cordenadas para o X:\n");
scanf("%d%d", &x, &y);
x--; y--;
if (matrix[x][y] != ' ') {
printf("Posição inválida, tente novamente. \n");
get_player();
}
else matrix[x][y] = 'X';
}
void get_computer(void)
{
register int x;
int ver = 0;
/*verifica linhas*/
for (x=0; x<3; ++x)
if (ver !=1 && matrix[x][0] != ' ' && matrix[x][0] == matrix[x][1]) {
if (matrix[x][2] == ' ') {
matrix[x][2] = 'O';
ver = 1;
break;
}
}
for (x=0; x<3;++x)
if (ver !=1 && matrix[x][1] != ' ' && matrix[x][1] == matrix[x][2]) {
if (matrix[x][0] == ' ') {
matrix[x][0] = 'O';
ver = 1;
break;
}
}
for (x=0; x<3;++x)
if (ver !=1 && matrix[x][0] != ' ' && matrix[x][0] == matrix[x][2]) {
if (matrix[x][1] == ' ') {
matrix[x][1] = 'O';
ver = 1;
break;
}
}
/*verifica colunas*/
for (x=0; x<3; ++x)
if (ver !=1 && matrix[0][x] != ' ' && matrix[0][x] == matrix[1][x]) {
if (matrix[2][x] == ' ') {
matrix[2][x] = 'O';
ver = 1;
break;
}
}
for (x=0; x<3;++x)
if (ver !=1 && matrix[1][x] != ' ' && matrix[1][x] == matrix[2][x]) {
if (matrix[0][x] == ' ') {
matrix[0][x] = 'O';
ver = 1;
break;
}
}
for (x=0; x<3;++x)
if (ver !=1 && matrix[0][x] != ' ' && matrix[0][x] == matrix[2][x]) {
if (matrix[1][x] == ' ') {
matrix[1][x] = 'O';
ver = 1;
break;
}
}
/*Não achei uma relação matematica entre as diagonais, então não usarei um lago para verificalas*/
/*Verifica a diagonal principal*/
if
...