Fórum Exercício de IMC #528944
17/08/2015
0
import javax.swing.*;
public class Ex7_IMC {
public static void main(String args[]) {
float peso, altura;
String sexo, F, M;
sexo = JOptionPane.showInputDialog(" Digite o Sexo ");
peso = Float.parseFloat(JOptionPane.showInputDialog(null, " Digite o Peso "));
altura = Float.parseFloat(JOptionPane.showInputDialog(null, " Digite a altura "));
if (sexo == M) {
if (peso > (72.7 * altura) - 58) {
JOptionPane.showMessageDialog(null, " Você está acima do peso ");
} else {
JOptionPane.showMessageDialog(null, " O seu peso está normal ");
}
} else {
if (sexo == F) {
if (peso > (62.1 * altura) - 44.7) {
JOptionPane.showMessageDialog(null, " Você está acima do peso ");
} else {
JOptionPane.showMessageDialog(null, " O seu peso está normal ");
}
} else {
}
}
}
}
Helbert Márcio
Curtir tópico
+ 0Posts
17/08/2015
Janaina Mendes
sempre que postar um código, insira-o entre as tags code, "inserir código"
import javax.swing.*;
public class Ex7_IMC {
public static void main(String args[]) {
float peso, altura;
String sexo, F, M;
sexo = JOptionPane.showInputDialog(" Digite o Sexo ");
peso = Float.parseFloat(JOptionPane.showInputDialog(null, " Digite o Peso "));
altura = Float.parseFloat(JOptionPane.showInputDialog(null, " Digite a altura "));
if (sexo == M) {
if (peso > (72.7 * altura) - 58) {
JOptionPane.showMessageDialog(null, " Você está acima do peso ");
} else {
JOptionPane.showMessageDialog(null, " O seu peso está normal ");
}
} else {
if (sexo == F) {
if (peso > (62.1 * altura) - 44.7) {
JOptionPane.showMessageDialog(null, " Você está acima do peso ");
} else {
JOptionPane.showMessageDialog(null, " O seu peso está normal ");
}
} else {
}
}
}
}
Gostei + 0
17/08/2015
Jothaz
Gostei + 0
17/08/2015
Helbert Márcio
Gostei + 0
17/08/2015
Jothaz
import javax.swing.*;
public class Ex7_IMC {
public static void main(String args[]) {
float peso, altura;
float pesoCalc;
String sexo, F, M;
sexo = JOptionPane.showInputDialog(" Digite o Sexo ");
peso = Float.parseFloat(JOptionPane.showInputDialog(null, " Digite o Peso "));
altura = Float.parseFloat(JOptionPane.showInputDialog(null, " Digite a altura "));
pesoCalc = (62.1 * altura) - 44.7);
if ((sexo == 'M') || (sexo == 'm')) {
if (peso > pesoCalc)
JOptionPane.showMessageDialog(null, " Você está acima do peso ");
else
JOptionPane.showMessageDialog(null, " O seu peso está normal ");
} else if ((sexo == 'F') || (sexo == 'f')) {
if (peso > pesoCalc)
JOptionPane.showMessageDialog(null, " Você está acima do peso ");
else
JOptionPane.showMessageDialog(null, " O seu peso está normal ");
}
}
}
Gostei + 0
17/08/2015
Helbert Márcio
Gostei + 0
17/08/2015
Janaina Mendes
Gostei + 0
17/08/2015
Jothaz
Então use a opção de debug e comece a executar o código linha a linha para ver o que esta acontecendo.
Ou mande imprimir os valores das variáveis:
sexo = JOptionPane.showInputDialog(" Digite o Sexo ");
peso = Float.parseFloat(JOptionPane.showInputDialog(null, " Digite o Peso "));
altura = Float.parseFloat(JOptionPane.showInputDialog(null, " Digite a altura "));
pesoCalc = (62.1 * altura) - 44.7);
System.out.println(sexo);
System.out.println(peso);
System.out.println(altura);
System.out.println(pesoCalc);
E veja o conteúdo!
Gostei + 0
17/08/2015
Helbert Márcio
Gostei + 0
17/08/2015
Janaina Mendes
Gostei + 0
17/08/2015
Jothaz
Use o equals:
if ((sexo.equals("M")|| (sexo.equals("m"))) {
Pode existir espaços nas strings;
Tente retirá-los:
if ((sexo.trim() == 'M') || (sexo.trim() == 'm')) {
Gostei + 0
17/08/2015
Helbert Márcio
Gostei + 0
17/08/2015
Janaina Mendes
Gostei + 0
17/08/2015
Jothaz
Ou seria usado em um combobox, apresentando a descrição ma usando como value números.
Mas com o .equals("") vai resolve o problema da verificação no caso acima.
Gostei + 0
18/08/2015
Janaina Mendes
Gostei + 0
18/08/2015
Jothaz
Mas é sempre mais preciso utilizar números.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)