Hola, Maria, espero que estés bien
Tu código para calcular el Índice de Masa Corporal (IMC) parece estar en buen camino. Estás solicitando correctamente los datos de entrada y calculando el IMC según la fórmula dada. Además, estás manejando adecuadamente las condiciones para clasificar el IMC.
Aquí hay un par de sugerencias que podrían ayudarte a mejorar el código:
Validación de entrada: Aunque ya estás verificando si el peso y la altura son mayores que cero, podrías considerar agregar más validaciones para asegurarte de que el usuario ingrese números válidos. Por ejemplo, podrías manejar excepciones para asegurarte de que el usuario no ingrese texto o caracteres no numéricos.
Mensajes de salida: Asegúrate de que los mensajes de salida sean claros y concisos. Podrías agregar un mensaje adicional para indicar que el cálculo se ha realizado con éxito, o proporcionar más detalles sobre lo que significa cada clasificación.
Aquí tienes un ejemplo de cómo podrías manejar una excepción para entradas no válidas:
try:
peso = float(input("Ingresa el peso en kg: "))
altura = float(input("Ingresa la altura en metros: "))
if peso <= 0 or altura <= 0:
print("Error: El peso y la altura deben ser mayores que cero.")
else:
imc = peso / (altura ** 2)
print("El IMC es:", round(imc, 2))
if imc < 18.5:
print("Clasificación: Por debajo del peso.")
elif 18.5 <= imc < 25:
print("Clasificación: Peso normal.")
else:
print("Clasificación: Por encima del peso.")
except ValueError:
print("Por favor, ingresa un número válido.")
Espero que esto te sea de ayuda y te permita continuar con tu proyecto de manera exitosa. ¡Espero haber ayudado y buenos estudios!