Jogo da Velha Player VS CPU em C

599 palavras 3 páginas
#include
#include
#define LINHAS 3
#define COLUNAS 3
#define CASAS 9

void init_tabuleiro(void); void mostra_tabuleiro(void); void jogada_player(void); void jogada_cpu(void); int update_tabuleiro(int x, int y); // retorna 0 se a operação for bem sucedida int testa_vencedor(void); // 2 - vitória cpu, 1 - vitória player, 0 - nada aconteceu int velha(void); // conta o número de casas vazias no tabuleiro

enum vez { PLAYER, CPU } jogador;

int tabuleiro[LINHAS][COLUNAS];

void main() { int escolha, status; jogador = PLAYER; // seta o primeiro jogador para player init_tabuleiro(); // inicia o tabuleiro com 0s

while(1) { if (jogador == PLAYER) { if (!velha()) break; mostra_tabuleiro(); jogada_player(); status = testa_vencedor(); if (status) break; } if (jogador == CPU) { if (!velha()) break; jogada_cpu(); status = testa_vencedor(); if (status) break; } }

mostra_tabuleiro();

if (status == 1) printf("\nParabéns, você venceu!\n"); else if (status == 2) printf("\nVocê perdeu!"); // \n"); else printf("\nDeu velha!\n");

while(1) { printf("\nJogar novamente? (1 = sim / 2 = não) : "); scanf("%d", &escolha); if (escolha == 1) main(); else if (escolha == 2) exit(0); else printf("\nEscolha invalida!"); }
}

void init_tabuleiro() { register int i; int *p; p = (int *) tabuleiro;

for (i = 0; i < CASAS; i++ ) *(p+i) = 0;
}

int velha() { register int i; int *p, zeros = 0; p = (int *) tabuleiro;

for (i = 0; i < CASAS; i++ ) if (*(p+i) == 0) zeros++;

if (!zeros) return 0; else return 1;
}

void mostra_tabuleiro() { register int i, j; printf("\n");

for (i = 0; i < 3; i++) { for (j = 0; j < 3; j++) {

Relacionados

  • TCC Android Tudo Sobre Desenvolvimento De Aplicativos
    53665 palavras | 215 páginas
  • A estratégia competitiva aplicada pela nintendo
    25554 palavras | 103 páginas
  • studio
    99698 palavras | 399 páginas
  • Analista
    260177 palavras | 1041 páginas
  • kjhfdhgfjh
    115197 palavras | 461 páginas
  • Eu e a minha prima
    84912 palavras | 340 páginas
  • nintendo
    84012 palavras | 337 páginas
  • 01 A Hist Ria Do Videogame
    31329 palavras | 126 páginas
  • crianca violencia midia
    150946 palavras | 604 páginas
  • Apostilamecatronica
    147282 palavras | 590 páginas