Olá!
Estou cursando a formação em PHP e o terceiro desafio é calcular o IMC e exibir se você está abaixo, dentro ou acima do peso.
Fui um pouco além e utilizei um vetor para que a resposta fosse um pouco mais específica de acordo com a fonte.
O que dá para melhorar no código?
Obrigado!
// Terceiro desafio - Cálculo do IMC
// Fonte: https://www.minhavida.com.br/alimentacao/tudo-sobre/32159-imc
$altura = 1.90;
$peso = 120;
$imc = $peso / ($altura ** 2);
$dicionario = [
18.5 => "Abaixo do peso",
24.9 => "Peso normal",
29.9 => "Sobrepeso",
34.9 => "Obesidade grau 1",
39.9 => "Obesidade grau 2",
40.0 => "Obesidade grau 3"
];
foreach($dicionario as $key => $value){
//Se a chave for menor que 40, então testa os valores de acordo com o IMC.
if($key < 40.0){
if($imc <= $key){
echo PHP_EOL."$value";
break;
}
}else{ //Se a chave for maior ou igual a 40
echo PHP_EOL."$value";
}
}