Olá preciso de ajuda para simplificar este código (se possível) ainda utilizando o JOptionPane
O código se trata da pessoa imaginar um dos animais pré-definidos e o programa adivinha-ló
Tabela com os tipos de cada animal
http://prntscr.com/nv5fyc
import javax.swing.JOptionPane; public class Animal { public Animal() { } public static void main(String[] args) { String mami,quad,s1="Sim",s2="Não",carn,bi,oni,voador,ave,nvoador,tropical,nadadora,rept,casco,carni; JOptionPane.showMessageDialog(null,"Pense em um destes animais: leão, cavalo, homem, macaco, morcego, baleia, avestruz, pinguim, pato, águia, tartaruga, crocodilo, cobra") ; mami = JOptionPane.showInputDialog("Seu animal é mamífero?") ; //Mamiferos if (mami.equals (s1)) { quad = JOptionPane.showInputDialog("Seu animal é quadrúpede?") ; //Quadrupede if (quad.equals (s1)) { carn = JOptionPane.showInputDialog("Seu animal é carnívoro?") ; if (carn.equals (s1)) JOptionPane.showMessageDialog(null,"Seu animal é um leão"); if (carn.equals (s2)) JOptionPane.showMessageDialog(null,"Seu animal é um cavalo"); } //Fim Quadrupede //Bipede if (quad.equals (s2)) { bi = JOptionPane.showInputDialog("Seu animal é bípede?") ; if (bi.equals (s1)) { oni = JOptionPane.showInputDialog("Seu animal é onívoro?") ; if (oni.equals (s1)) JOptionPane.showMessageDialog(null,"Seu animal é um homem"); if (oni.equals (s2)) JOptionPane.showMessageDialog(null,"Seu animal é um macaco"); } //Fim Bipede if (bi.equals (s2)) { voador = JOptionPane.showInputDialog("Seu animal é voador?" ); if(voador.equals(s1)) { JOptionPane.showMessageDialog(null,"Seu animal é um morcego") ; } if(voador.equals(s2)) {JOptionPane.showMessageDialog(null,"Seu animal é uma baleia") ; } } } }//Fim Mamiferos if (mami.equals (s2)) { ave = JOptionPane.showInputDialog("Seu animal é uma ave?") ; if (ave.equals(s1))//Começo aves { nvoador = JOptionPane.showInputDialog("Seu animal é voador?") ; if (nvoador.equals(s2)) { tropical = JOptionPane.showInputDialog("Seu animal é tropical?") ; if (tropical.equals(s1)) JOptionPane.showMessageDialog(null,"Seu animal é um avestruz") ; if (tropical.equals(s2)) JOptionPane.showMessageDialog(null,"Seu animal é um pinguim") ; } if (nvoador.equals(s1)) { nadadora = JOptionPane.showInputDialog("Seu animal é nadador?") ; if (nadadora.equals(s1)) { JOptionPane.showMessageDialog(null,"Seu animal é um pato") ; } if (nadadora.equals(s2)) { JOptionPane.showMessageDialog(null,"Seu animal é uma águia") ; } } }//Fim aves if (ave.equals(s2)) {//Repteis rept = JOptionPane.showInputDialog("Seu animal é um réptil?") ; if (rept.equals(s1)) { casco = JOptionPane.showInputDialog("Seu animal tem casco?") ; if (casco.equals(s1)) { JOptionPane.showMessageDialog(null,"Seu animal é uma tartaruga") ; } if (casco.equals(s2)) { carni = JOptionPane.showInputDialog("Seu animal é carnívoro") ; if (carni.equals(s1)) JOptionPane.showMessageDialog(null,"Seu animal é um crocodilo") ; if (carni.equals(s2)) JOptionPane.showMessageDialog(null,"Seu animal é uma cobra") ; } } if (rept.equals(s2)) { JOptionPane.showMessageDialog(null,"Suas respostas estão incompativeís, tente novamente") ; } }//Fim repteis }//Nao Mamifero } }
Agradeceria caso alguem possa me ajudar