Given the following algorithm in Java that computes the IMC:
class Pessoa {
String nome;
double peso, altura;
double calculaIMC () {
return peso / (altura * altura);
}
String avaliaIMC () {
double imc = calculaIMC();
if (imc < 18.5)
return "abaixo do peso!!!";
if (imc >= 18.5 && imc <= 25)
return "com peso normal.";
if (imc > 25 && imc <= 30)
return "acima do peso!";
return "obeso!!!";
}
}
import javax.swing.JOptionPane;
class Teste {
public static void main (String args[]) {
Pessoa p = new Pessoa();
Pessoa p2 = new Pessoa();
p.nome = JOptionPane.showInputDialog("Entre com seu nome");
p.altura = Double.parseDouble(
JOptionPane.showInputDialog("Entre com sua altura"));
p.peso = Double.parseDouble(
JOptionPane.showInputDialog("Entre com seu peso"));
JOptionPane.showMessageDialog(null,"" + p.nome + " seu IMC = " + p.calculaIMC());
JOptionPane.showMessageDialog(null,
"Isto significa que voce estah " + p.avaliaIMC());
p2.nome = JOptionPane.showInputDialog("Entre com seu nome");
p2.altura = Double.parseDouble(
JOptionPane.showInputDialog("Entre com sua altura"));
p2.peso = Double.parseDouble(
JOptionPane.showInputDialog("Entre com seu peso"));
JOptionPane.showMessageDialog(null,"" + p2.nome + " seu IMC = " + p2.calculaIMC());
JOptionPane.showMessageDialog(null,
"Isto significa que voce estah " + p2.avaliaIMC());
if(p.calculaIMC()>p2.calculaIMC())
JOptionPane.showMessageDialog(null, p.nome + " eh mais obeso");
else
JOptionPane.showMessageDialog(null, p2.nome + " eh mais obeso");
}
}
How can that conditional test of the end of the code be done through a method defined in the Person class? If yes, how do I pass the imc of each object as a parameter?