1
What’s wrong with that code, I can’t print the IMC calculation? Error is in the last lines of the Person Class.
package exe_3_ques_02;
//import import java.util.Set;
import class exe_3_ques_03.Pessoa;
public class Exe_3_Ques_02 {
public static void main(String[] args) {
System.out.println(" Exercícios – Construindo Classes ");
System.out.println(" Questão 2 ");
System.out.println("=========================\n");
//=========================================
Pessoa pessoa = new Pessoa("Diego", 23, 1.70f, 72f, "Masculino"); //, 23, 170, 72, M
System.out.println(" Nome: " + pessoa.getNome());
System.out.println(" Idade: " + pessoa.getIdade());
System.out.println(" Altura: " + pessoa.getAltura());
System.out.println(" Peso: " + pessoa.getPeso());
System.out.println(" Sexo: " + pessoa.getSexo());
System.out.println(" IMC" + pessoa.toString()); //
System.out.println("=================");
}
}
CLASS PERSON
package exe_3_ques_02;
public class Pessoa {
private String nome, sexo;
private int idade;
private float altura, peso;
public Pessoa() {
this.nome = " ";
this.idade = 0;
this.altura = 0;
this.peso = 0;
this.sexo = " ";
}
public Pessoa(String nome, int idade, float altura, float peso, String sexo) {
this.nome = nome;
this.idade = idade;
this.altura = altura;
this.peso = peso;
this.sexo = sexo;
}
//=================
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
//=================
public int getIdade() {
return idade;
}
public void setIdade(int idade) {
this.idade = idade;
}
//=================
public float getAltura() {
return altura;
}
public void setAltura(float altura) {
this.altura = altura;
}
//=================
public float getPeso() {
return peso;
}
public void setPeso(float peso) {
this.peso = peso;
}
//=================
public String getSexo() {
return sexo;
}
public void setSexo(String sexo) {
this.sexo = sexo;
}
//=================
// calculo
public String calculoIMC (){
double calculo;
calculo = peso / (altura * altura);
if (calculo <= 18.5) {
return ("Seu IMC é "+calculo + " abaixo do normal!");
}
else if ((calculo > 25.0) && (calculo <= 30.0)) {
return ("Seu IMC é " +calculo + " acima do normal!");
}
else if (calculo > 30) {
return ("Seu IMC é " + calculo + " obesidade!");
}
}
//================
@Override
public String toString(){
return " de : "+this.nome + " esta: " + calculo; // ERRO!
}
}
Which error appears?
– Juliana Marques
I edited with a bug print
– Diego Roney
https://answall.com/q/212754/101
– Maniero