Criei um jogo bem simples, chamado Jogo dos Animais, que apesar de simples, deu um bom trabalho para resolver a lógica e complexidade do problema.
Basicamente o jogo faz uma pergunta, tendo uma base de dados de início somente com 1 pergunta(vive na água), 2 respostas(sim e não) e 2 animais(tubarão e macaco).
Para cada animal, é associada uma pergunta com uma resposta. Portanto no início do jogo eu tenho a seguinte tabela de decisão:
ANIMAL: TUBARÃO
|___ PERGUNTA: VIVE NA ÁGUA
|_______ RESPOSTA: SIM
ANIMAL: MACACO
|___ PERGUNTA: VIVE NA ÁGUA
|_______ RESPOSTA: NÃO
Partindo deste princípio, caso o animal sugerido não seja o animal pensado, o jogo pergunta qual o nome do animal e o que ele faz que o animal sugerido não faz. Exemplo:
PERGUNTA: O ANIMAL QUE VOCÊ PENSOU FOI MACACO ?
|____ RESPOSTA: NÃO
|_______ PERGUNTA: QUAL O ANIMAL QUE VOCÊ PENSOU E O QUE ELE FAZ DE DIFERENTE DO MACACO?
|__________ RESPOSTA: PAPAGAIO / FALA
Partindo do princípio que já temos um novo animal(PAPAGAIO) com uma nova pergunta(FALA), basta adicionar-mos ele na nossa lista de animais e também todas as perguntas feitas durante o jogo para dentro da lista de perguntas daquele animal, criando assim uma árvore.
Link do jogo:
http://www.prsolucoes.com/jogodosanimais/
Segue uma imagem do jogo:
