Ir ao conteúdo
  • Cadastre-se

Otávio Palma

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

1
  1. Bom dia amigos, estou precisando de uma ajuda, tenho um trabalho para entregar que precisa seguir a seguinte lógica: Implementação de um jogo da velha (utilizando Min-Max), o programa precisa ser feito utilizando árvores, uma vez que haverá como escolher o nível de dificuldade, sendo este nível, o número de linhas que a IA percorrerá na árvore (por exemplo: nível máximo -> percorre a árvore toda (nunca perde)). Meu professor já disponibilizou uma função que cria todas as jogadas possíveis, dessa forma, eu preciso encontrar algum jeito de implementá-la no código, segue o mesmo: #include<stdio.h> #define quantidadePossibilidades 9 unsigned int vetorDisponibilidadeJogada[quantidadePossibilidades]; unsigned int vetorJogadas[9]; void imprimeJogada () { int i; for (i = 0; i < quantidadePossibilidades; i++){ printf("%d, ", vetorJogadas[i]); } printf("\n"); getchar(); } void funcaoRecursivaPossibilidades (int alturaDaArvore) { int i = 0; if (alturaDaArvore == quantidadePossibilidades){ printf("Chegou ao fim da Arvore: "); imprimeJogada(); } else { for (i = 0; i < quantidadePossibilidades; i++){ if (vetorDisponibilidadeJogada[i] == 1){ vetorDisponibilidadeJogada[i] = 0; vetorJogadas[alturaDaArvore] = i; funcaoRecursivaPossibilidades(alturaDaArvore + 1); vetorDisponibilidadeJogada[i] = 1; } } } } void inicializaVetorPossibilidades (){ int i; for (i = 0; i < quantidadePossibilidades; i++){ vetorDisponibilidadeJogada[i] = 1; } } main () { /*inicializando o vetor de possibilidades - no inicio, todas as possibilidades de jogada estão disponiveis*/ inicializaVetorPossibilidades(); /*funcao recursiva para enumerar todas as possibilidades de jogada*/ funcaoRecursivaPossibilidades(0); } De forma resumida, tenho que criar uma árvore com todas as jogadas possíveis e ao utilizar o min-max fazer a IA escolher as melhores jogadas baseada na dificuldade. Estou utilizando a seguinte estrutura para criação de nós da árvore: typedef struct no { int minimax; struct no *posicao[9]; int valor; } node; Preciso de ajuda para a construção da árvore (implementação da função inserir), espero que possam me ajudar e me perdoem por qualquer erro.

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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!