Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Calculando IMC

def exibir_resultado(imc, status):
    print(f"\nSeu IMC é: {imc:.2f}")   
    print(f"Classificação: {status}")

peso = float(input("Digite seu peso (kg): "))
altura = float(input("Digite sua altura (m): "))
IMC = peso / (altura ** 2)

if IMC < 18.5:
    exibir_resultado(IMC, "Magreza")
elif IMC <= 24.9:
    exibir_resultado(IMC, "Peso Normal")
elif IMC <= 29.9:
    exibir_resultado(IMC, "Sobrepeso")
elif IMC <= 39.9:
    exibir_resultado(IMC, "Obesidade")
else: 
    exibir_resultado(IMC, "Obesidade Grave")
    



(**obs:** aqui está aparecendo sem as identações mas no vscode o código ta certinho, rodando normal)
1 resposta

Oi, Nyka! Como vai?

Seu código ficou bem estruturado para calcular o IMC e classificar o resultado usando if, elif e else. Também foi uma boa escolha criar a função exibir_resultado(), pois ela evita repetição de print() e deixa o programa mais organizado.

Dica: para seguir a convenção mais comum em Python, use nomes de variáveis em letras minúsculas, como imc, em vez de IMC. Você também pode validar se a altura é maior que zero antes do cálculo, evitando erro de divisão:

peso = float(input("Digite seu peso em kg: "))
altura = float(input("Digite sua altura em metros: "))

if altura > 0:
    imc = peso / (altura ** 2)
    exibir_resultado(imc, "Classificacao calculada")
else:
    print("Altura invalida.")

Esse cuidado deixa o programa mais seguro para entradas incorretas. Qual parte desse exercício você achou mais interessante: criar a função ou montar as condições de classificação?

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!