Olá, Edineres. Como vai?
Parabéns pelo esforço e por não ter desistido! Programação é exatamente assim no começo: uma verdadeira luta com a sintaxe, mas a sensação de ver o código funcionando compensa cada minuto de dedicação. O mais importante é que você conseguiu entender a lógica por trás do cálculo e das condições.
O seu raciocínio para calcular o IMC e classificar os resultados usando if, elif e else está totalmente correto. A fórmula matemática foi aplicada certinho e a formatação com {imc:.2f} para mostrar apenas duas casas decimais ficou excelente!
Como você mencionou que foi uma luta e copiou um trecho, aposto que parte dessa dificuldade aconteceu por causa de um detalhe muito específico do Python: a indentação (aqueles espaços no começo das linhas) e a quebra de linhas. Do jeito que o código foi colado no fórum, ele apresentaria alguns erros de sintaxe se fosse executado diretamente.
Para te ajudar a deixar o seu código perfeito e pronto para rodar sem nenhum erro, fiz alguns pequenos ajustes de organização nele:
- Coloquei o comando
print(f"Seu IMC é...") na linha de baixo, logo após o cálculo. - Alinhei todas as estruturas de condição (
if, elif) na margem esquerda. - Coloquei quatro espaços de recuo (indentação) para os comandos
print que estão dentro de cada condição.
Veja como o seu código fica limpo e funcional:
peso = float(input('Digite o peso (ex: 70.5): '))
altura = float(input('Digite a altura (ex: 1.75): '))
imc = peso / (altura ** 2)
print(f"Seu IMC é: {imc:.2f}")
if imc < 18.5:
print('Abaixo do peso')
elif 18.5 <= imc < 25:
print('Peso normal')
else:
print('Acima do peso')
- Dica de ouro sobre o
else:
Repare que na última condição eu substituí o elif imc >= 25: por apenas else:. Como o Python já checou se o IMC é menor que 18.5 e se está entre 18.5 e 25, qualquer número que sobrar com certeza será maior ou igual a 25. O else serve justamente para cobrir "todo o resto", deixando seu script ainda mais simples.
Continue praticando e postando suas dúvidas por aqui. Cada pequena vitória te deixa mais perto de dominar o Python!
Espero que possa ter lhe ajudado!