Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Calculando o IMC

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas

Olá, Estudante. Como vai?

O seu código está excelente! Você aplicou corretamente a fórmula matemática do IMC no Python utilizando o operador de potência `` e organizou muito bem as estruturas condicionais para classificar o resultado. O uso de {imc:.2f} na f-string também foi uma ótima escolha para limitar as casas decimais e deixar a saída mais amigável.

Para complementar o seu projeto, podemos falar sobre a lógica de intervalos. Quando trabalhamos com classificações de saúde como o IMC, os valores costumam seguir uma tabela padronizada. No seu código, você usou o elif imc < 25 de forma inteligente, pois o Python só chega nessa linha se o imc for maior ou igual a 18.5.

Uma sugestão para tornar seu programa ainda mais informativo seria incluir mais faixas de classificação, como o Sobrepeso e a Obesidade, seguindo a tabela da OMS. Veja como o código poderia ser expandido:

peso = float(input("Digite o peso em kg: "))
altura = float(input("Digite a altura em metros: "))

imc = peso / (altura ** 2)

print(f"Seu IMC é {imc:.2f}")

if imc < 18.5:
    print("Você está abaixo do peso.")
elif imc < 25:
    print("Você está com peso normal.")
elif imc < 30:
    print("Você está com sobrepeso.")
else:
    print("Você está com obesidade.")

Note que a ordem das condições é fundamental. Como o Python lê o código de cima para baixo, ao testar primeiro o menor valor (< 18.5) e depois ir subindo, você garante que cada valor caia na "caixa" correta sem precisar escrever condições complexas como elif imc >= 18.5 and imc < 25.

Parabéns pelo progresso e pela organização do código!

Espero que possa ter lhe ajudado!

solução!

Olá, Evandro, irei anotar aqui para aplicar e testar.

Muito obrigada pela dica!