Помогите решить задачу на питонее

Я решаю задачу на Степике, но у меня вылазит ошибка суть задачи в том, чтобы вычислить ИМТ и узнать массу (жирный или нет).

# put your python code here
a = float(input());
b = float(input());
result = a / b*b

if result < 18.5 and result > 25:
    print('Оптимальная масса')
if result > 18.5:
    print('Недостаточная масса')
elif result > 25:
    print('Избыточная масса')

но этот код выводит ошибку

Failed test #1 of 10. Wrong answer

This is a sample test from the problem statement:

Test input:
65
1.75
Correct output:
Оптимальная масса

Your code output:
Недостаточная масса

Ответы (3 шт):

Автор решения: Val Palchenko
  1. Добавьте скобки в result. Сейчас это не имеет значения, но хорошей практикой является явное указание знаменателя.
  2. b*b можно написать, но лучше b**2
  3. Разберитесь с условиями. Там у вас каша
→ Ссылка
Автор решения: Джабраил Мусаев
a = float(input())
b = float(input())
result = a / b*b

if result > 18.5 and result < 25:
    print('Оптимальная масса')
elif result < 18.5:
    print('Недостаточная масса')
elif result > 25:
    print('Избыточная масса')

Попробуй вот так.

→ Ссылка
Автор решения: MarianD

В вашем коде несколько небольших ошибок:

  1. a / b*b
    

    Это значит делить а на b и затем результат (обратно) умножить на b.
    Таким образом вы просто получите a.

    Нужно применить скобки:

    a / (b * b)
    

     

  2. if result < 18.5 and result > 25:
    

    Не может быть результат меньшим чем 18.5 и одновременно большим чем 25.

    Вы наверно хотели

    if result > 18.5 and result < 25:
    

    что возможно написать более наглядно (по-математически) как

    if 18.5 < result < 25:
    

    Но по всей вероятности надо включить и границы:

    if 18.5 <= result <= 25:
    

     

  3. if result > 18.5:
        print('Недостаточная масса')
    

    Когда масса недостаточная, то результат должен быть не больше, а меньше:

    if result < 18.5:
        print('Недостаточная масса')
    

     

  4. elif result > 25:
       print('Избыточная масса')
    

    Это правильно, но так как в предыдущих двух условиях вы применили if, более красиво бы было вместо elif тоже применить if:

    if result > 25:
       print('Избыточная масса')
    

Или вообще применить констукцию if - elif - else:

if 18.5 <= result <= 25:
    print('Оптимальная масса')
elif result < 18.5:
    print('Недостаточная масса')
else:
    print('Избыточная масса')
→ Ссылка