Ir ao conteúdo
  • Cadastre-se

Bianca Barchfeld

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. Olá, tenho este código funcionando em java, só que preciso dele em pascal, package arvorepergunta; import java.util.Scanner; import javax.swing.JOptionPane; import javax.swing.JPanel; public class Arvore { private No raiz; public Arvore() { this.start(); } private void start() { this.raiz = new No("Vive na água?"); this.raiz.setEsquerda("Macaco"); this.raiz.setDireita("Peixe"); } public void iniciodojogo() { JOptionPane.showMessageDialog(null, "Pense em um animal e responda..."); while(true) { if(JOptionPane.showConfirmDialog(null, " Começar Jogo? ", "", JOptionPane.YES_NO_OPTION, JOptionPane.INFORMATION_MESSAGE) == 1) { break; } No elementoAtual = this.raiz; pergunta(elementoAtual); } } protected boolean pergunta(No elemento) { int resposta = JOptionPane.showConfirmDialog(null, elemento.getValor()+" ( 1 - Sim | 2 - Não )", "", JOptionPane.YES_NO_OPTION, JOptionPane.INFORMATION_MESSAGE); if(resposta == 0) { if (elemento.getDireita().getDireita() == null) { resposta = JOptionPane.showConfirmDialog(null, "O animal no qual você esta pensando é um: " + elemento.getDireita().getValor()+"!", "", JOptionPane.YES_NO_OPTION, JOptionPane.INFORMATION_MESSAGE); if(resposta == 0) { return true; } else { respostaErrada(elemento.getDireita()); } } else { return pergunta(elemento.getDireita()); } } else { if (elemento.getEsquerda().getEsquerda() == null) { resposta = JOptionPane.showConfirmDialog(null, "O animal no qual você esta pensando é um: " + elemento.getEsquerda().getValor()+"!", "", JOptionPane.YES_NO_OPTION, JOptionPane.INFORMATION_MESSAGE); if(resposta == 0) { return true; } else { respostaErrada(elemento.getEsquerda()); } } else { return pergunta(elemento.getEsquerda()); } } return false; } protected void respostaErrada(No elemento) { String animal = JOptionPane.showInputDialog(null, "Em que animal você estava pensando?"); String pergunta = JOptionPane.showInputDialog(null, "Como posso diferencia-lo de um "+elemento.getValor()+"?"); String animalAtual = elemento.getValor(); elemento.setValor(pergunta); elemento.setDireita(animal); elemento.setEsquerda(animalAtual); } } package arvorepergunta; public class ArvoreInteligente { /** * @param args the command line arguments */ public static void main(String[] args) { Arvore arv = new Arvore(); arv.iniciodojogo(); } } package arvorepergunta; public class No { private No direita; private No esquerda; private String valor; public No() { } public No(String valor) { this.valor = valor; } public No getDireita() { return direita; } public void setDireita(No direita) { this.direita = direita; } public void setDireita(String valor) { this.direita = new No(valor); } public No getEsquerda() { return esquerda; } public void setEsquerda(No esquerda) { this.esquerda = esquerda; } public void setEsquerda(String valor) { this.esquerda = new No(valor); } public String getValor() { return valor; } public void setValor(String valor) { this.valor = valor; } }

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