int verif_fim(int jogo[8][8]) { int i; for(i=0; i<8; i++) if (jogo[0][i]==2) return 2; for(i=0; i<8; i++) if (jogo[7][i]==1) return 1; return 0; } int faz_jogada(int jogo[8][8], int jogador) { int jogada_valida=0, fim_de_jogo; while(jogada_valida==0) jogada_valida=le_jogada(jogo, jogador); fim_de_jogo=verif_fim(jogo); return fim_de_jogo; } void imprime_jogo(int jogo[8][8]) { int i, j; printf(" "); for(i=0; i<8; i++) printf("%d ", i); printf("\n"); for(i=0; i<8; i++) { printf("\n%d ", i); for(j=0; j<8; j++) if (jogo[i][j] != -1) printf("%d ", jogo[i][j]); else printf(" ", jogo[i][j]); } } int main() { int jogo[8][8]={{1, -1, 1, -1, 1, -1, 1, -1}, \ {-1, 1, -1, 1, -1, 1, -1, 1}, \ {1, -1, 1, -1, 1, -1, 1, -1}, \ {-1, 0, -1, 0, -1, 0, -1, 0}, \ {0, -1, 0, -1, 0, -1, 0, -1}, \ {-1, 2, -1, 2, -1, 2, -1, 2}, \ {2, -1, 2, -1, 2, -1, 2, -1}, \ {-1, 2, -1, 2, -1, 2, -1, 2}}; int vitoria=0; while(1) { imprime_jogo(jogo); vitoria=faz_jogada(jogo, 1); if (vitoria) break; vitoria=faz_jogada(jogo, 2); if (vitoria) break; } printf("Vencedor: %d", vitoria); getch(); return 0; }