import [Link].
Scanner;
public class Main {
static class BmiCalculadora {
double peso;
double altura;
public BmiCalculadora(double peso, double altura) {
[Link] = peso;
[Link] = altura;
}
public double calcularImcImperial() {
return (peso / (altura * altura)) * 703;
}
public double calcularImcMetric() {
return peso / (altura * altura);
}
public static String classificarImc(double imc) {
if (imc < 18.5) {
return "Abaixo do peso";
} else if (imc < 24.9) {
return "Peso normal";
} else if (imc < 29.9) {
return "Sobrepeso";
} else {
return "Obesidade";
}
}
}
static class EntradaUsuario {
static Scanner scanner = new Scanner([Link]);
public static String obterSistemaIMC() {
String sistema;
do {
[Link]("Escolha o sistema de medida (Imperial ou
Métrico): ");
sistema = [Link]().trim().toLowerCase();
if ( &&  && !
[Link]("metrico")) {
[Link]("Sistema inválido! Digite 'Imperial' ou
'Métrico'.");
}
} while ( &&  && !
[Link]("metrico"));
return sistema;
}
public static double obterPeso(String sistemaIMC) {
double peso;
do {
if ([Link]("imperial")) {
[Link]("Informe o peso em libras: ");
} else {
[Link]("Informe o peso em quilogramas: ");
}
while (![Link]()) {
[Link]("Valor inválido! Digite um número válido.");
[Link]();
}
peso = [Link]();
[Link]();
if (peso <= 0) {
[Link]("Peso deve ser maior que zero.");
}
} while (peso <= 0);
return peso;
}
public static double obterAltura(String sistemaIMC) {
double altura;
do {
if ([Link]("imperial")) {
[Link]("Informe a altura em polegadas: ");
} else {
[Link]("Informe a altura em metros: ");
}
while (![Link]()) {
[Link]("Valor inválido! Digite um número válido.");
[Link]();
}
altura = [Link]();
[Link]();
if (altura <= 0) {
[Link]("Altura deve ser maior que zero.");
}
} while (altura <= 0);
return altura;
}
}
public static void main(String[] args) {
[Link]("=== Calculadora de IMC ===");
String sistema = [Link]();
double peso = [Link](sistema);
double altura = [Link](sistema);
BmiCalculadora calculadora = new BmiCalculadora(peso, altura);
double imc;
if ([Link]("imperial")) {
imc = [Link]();
} else {
imc = [Link]();
}
[Link]("Seu IMC é: %.2f\n", imc);
[Link]("Classificação: " + [Link](imc));
}
}