#input
name = input("Enter your name:")
height = input ("Height:")
weight = input ("Weight:")
print("Weight:" + weight +"kg")
print("height:" + height +"m")
print("My name is " + name +"!")

#operations with decimal numbers
metres = float(height)
height_sqr =  pow(metres,2)

kg = float(weight)
BMI = float(kg)/height_sqr

#print BMI results
print("BMI:" +str(BMI) +"Kg/M2")
-4
Zen Chen 2 ago. 2020 a las 16:00

1 respuesta

La mejor respuesta

Si desea un método más optimizado aquí está:

# getting input from the user and assigning it to the user

height = float(input("Enter height in meters: "))
weight = float(input("Enter weight in kg: "))

# the formula for calculating bmi

bmi = weight/(height**2) 
# ** is the power of operator i.e height*height in this case

print("Your BMI is: {0} and you are: ".format(bmi), end='')

#conditions
if ( bmi < 16):
   print("severely underweight")

elif ( bmi >= 16 and bmi < 18.5):
   print("underweight")

elif ( bmi >= 18.5 and bmi < 25):
   print("Healthy")

elif ( bmi >= 25 and bmi < 30):
   print("overweight")

elif ( bmi >=30):
   print("severely overweight") 

Aquí no tiene que tomar la entrada como una cadena y luego convertirla en un flotador ni tiene que usar una función para calcular la potencia. También muestra el rango en el que se encuentra su IMC.

Bueno, la eficiencia del código será la misma.

-1
vishwampandya 3 ago. 2020 a las 07:57