Ir ao conteúdo
  • Cadastre-se
shy0102

Erro no código: arquivo.exe parou de funcionar

Recommended Posts

Olá amigos. 
Eu sou um programador iniciante e estive passando um bom tempo para programar um jogo da velha. Eu fiz ele funcionar com o bot jogando aleatoriamente, então, para criar mais um nível de dificuldade, eu comecei a criar uma I.A. bem básica através de uma cadeia de if e else.

 

O problema está justamente nessa cadeia.

 

A principio, eu procurei na internet e após umas pesquisas, cheguei a conclusão que eu escrevi errado alguma parte dessa cadeia. Eu procurei, procurei, mas não achei, então vim pedir vossa ajuda.

 

void jogadaPChard(void)
{
    int coluna, linha;

    if(_tabuleiro[0][0]+_tabuleiro[0][1]==10)
        {linha=0;coluna=2;}
    else
        if(_tabuleiro[0][1]+_tabuleiro[0][2]==10)
            {linha=0;coluna=0;}
        else
            if(_tabuleiro[0][0]+_tabuleiro[0][2]==10)
                {linha=0;coluna=1;}
            else
                if(_tabuleiro[1][0]+_tabuleiro[1][1]==10)
                    {linha=1;coluna=2;}
                else
                    if(_tabuleiro[1][1]+_tabuleiro[1][2]==10)
                        {linha=1;coluna=0;}
                    else
                        if(_tabuleiro[1][0]+_tabuleiro[1][2]==10)
                            {linha=1;coluna=1;}
                        else
                            if(_tabuleiro[2][0]+_tabuleiro[2][1]==10)
                                {linha=2;coluna=2;}
                            else
                                if(_tabuleiro[2][1]+_tabuleiro[2][2]==10)
                                    {linha=2;coluna=0;}
                                else
                                    if(_tabuleiro[2][0]+_tabuleiro[2][2]==10)
                                        {linha=2;coluna=1;}
                                    else
                                        if(_tabuleiro[0][0]+_tabuleiro[1][0]==10)
                                            {linha=0;coluna=2;}
                                        else
                                            if(_tabuleiro[1][0]+_tabuleiro[2][0]==10)
                                                {linha=0;coluna=0;}
                                            else
                                                if(_tabuleiro[0][0]+_tabuleiro[2][0]==10)
                                                    {linha=1;coluna=2;}
                                                else
                                                    if(_tabuleiro[0][1]+_tabuleiro[1][1]==10)
                                                        {linha=2;coluna=1;}
                                                    else
                                                        if(_tabuleiro[1][1]+_tabuleiro[2][1]==10)
                                                            {linha=0;coluna=1;}
                                                        else
                                                            if(_tabuleiro[0][1]+_tabuleiro[2][1]==10)
                                                                {linha=1;coluna=1;}
                                                            else
                                                                if(_tabuleiro[0][2]+_tabuleiro[1][2]==10)
                                                                    {linha=2;coluna=2;}
                                                                else
                                                                    if(_tabuleiro[1][2]+_tabuleiro[2][2]==10)
                                                                        {linha=0;coluna=2;}
                                                                    else
                                                                        if(_tabuleiro[0][2]+_tabuleiro[2][2]==10)
                                                                            {linha=1;coluna=2;}
                                                                        else
                                                                            if(_tabuleiro[0][0]+_tabuleiro[1][1]==10)
                                                                                {linha=2;coluna=2;}
                                                                            else
                                                                                if(_tabuleiro[1][1]+_tabuleiro[2][2]==10)
                                                                                    {linha=0;coluna=0;}
                                                                                else
                                                                                    if(_tabuleiro[0][0]+_tabuleiro[2][2]==10)
                                                                                        {linha=1;coluna=1;}
                                                                                    else
                                                                                        if(_tabuleiro[0][2]+_tabuleiro[1][1]==10)
                                                                                            {linha=2;coluna=0;}
                                                                                        else
                                                                                            if(_tabuleiro[1][1]+_tabuleiro[2][0]==10)
                                                                                                {linha=0;coluna=2;}
                                                                                            else
                                                                                                if(_tabuleiro[2][0]+_tabuleiro[0][2]==10)
                                                                                                    {linha=1;coluna=1;}
                                                                                                else
                                                                                                    jogadaPC();

    if(_tabuleiro[linha][coluna]==0)
        _tabuleiro[linha][coluna] = 250;
    else
        jogadaPC();
}

Apenas quero dizer que a função jogadaPC(); é a mais simples e está funcionando sem erros.
 

ATUALIZAÇÃO: Esse problema foi resolvido depois de eu tirar todos os else.

Editado por shy0102

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×