Ir ao conteúdo
  • Cadastre-se

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


shy0102

Posts recomendados

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.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...