Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Сложная задачка на питоне. БЕЗ ИСПОЛЬЗОВАНИЯ GPT!!!

Pavlunda Ученик (147), закрыт 12 месяцев назад
Индекс массы тела – t уникальный инструмент, придуманный еще два столетия назад, с успехом используют люди, беспокоящиеся о своем здоровье. На вопрос, как рассчитать индекс массы тела, существует формула: необходимо вес (в килограммах) разделить на возведенный в квадрат рост (в метрах). Например, входящие данные таковы: вес = 85 кг, рост = 165 см. Следовательно, ИМТ = 85:(1,65×1,65) = 31,2.
1) Если ИМТ менее 17,5, то рекомендуется повышение веса лечение анорексии.
2) Если ИМТ от 17,5 до 23,0, то похудения не требуется.
3) Если ИМТ от 23,1 до 35,0, то настоятельно рекомендуется снижение массы тела.
4) Если ИМТ более 35,0, то необходимо немедленное снижение массы тела.

Пример:
weight = float(input("Введите ваш вес в килограммах: "))
height = float(input("Введите ваш рост в метрах: "))
imt = round(weight / (height ** 2),1)
print(f"Ваш индекс массы тела равен {imt}")
if imt < 17.5:
print("У вас недостаточная масса тела. Рекомендуется повышение веса или лечение анорексии.")
elif 17.5 < imt < 23:
print("Ваш вес в норме. Похудения не требуется.")
elif 23.1 < imt < 35:
print("У вас избыточная масса тела. Настоятельно рекомендуется снижение веса.")
else:
print("У вас ожирение. Необходимо немедленное снижение массы тела.")

НО работает некорректно.
Лучший ответ
Саня Семенов Оракул (60425) 12 месяцев назад
Ошибки в коде заключаются в неверных диапазонах для проверки ИМТ на соответствие определенной категории. В правильной версии кода следует изменить условия проверок на следующие:

if imt < 18.5:
print("У вас недостаточная масса тела. Рекомендуется повышение веса или лечение анорексии.")
elif 18.5 <= imt < 25:
print("Ваш вес в норме. Похудения не требуется.")
elif 25 <= imt < 30:
print("У вас избыточная масса тела. Настоятельно рекомендуется снижение веса.")
else:
print("У вас ожирение. Необходимо немедленное снижение массы тела.")
Остальные ответы
колобанга кавабанга Мастер (2132) 12 месяцев назад
Так просто подставь в образец
PavlundaУченик (147) 12 месяцев назад
Что подставить?! Написал же, что код который у меня получился работает некорректно.
Кира Курседова Просветленный (48342) 12 месяцев назад
 # функция для расчета ИМТ 
def calculate_bmi(weight, height):
bmi = weight / (height ** 2)
return bmi

# заданные входные данные (вес в кг и рост в см)
weight = 85
height = 1.65

# переводим рост в метры
height_in_m = height / 100

# вызываем функцию для расчета ИМТ
bmi = calculate_bmi(weight, height_in_m)

# выводим результат
print("ИМТ: ", round(bmi, 2))

# выводим рекомендации в соответствии с заданными условиями
if bmi < 17.5:
print("Рекомендуется повышение веса, лечение анорексии.")
elif bmi >= 17.5 and bmi <= 23.0:
print("Похудения не требуется.")
elif bmi >= 23.1 and bmi <= 35.0:
print("Настоятельно рекомендуется снижение массы тела.")
else:
print("Необходимо немедленное снижение массы тела.")
noname Мыслитель (9127) 12 месяцев назад
А сложность в оптимизации? Типа надо побитово записать код в файл собрать под него компилятор и все это на питоне сделать? Или может развернуть все в оперативке шеллкодом?
PavlundaУченик (147) 12 месяцев назад
А на понятном языке, можно?
Посада Ядерная Гуру (4757) 12 месяцев назад
 weight = float(input("Введите ваш вес в килограммах: ")) 
height = float(input("Введите ваш рост в сантиметрах: ")) / 100
imt = round(weight / (height ** 2), 1)

print(f"Ваш индекс массы тела равен {imt}")

if imt < 17.5:
print("У вас недостаточная масса тела. Рекомендуется повышение веса или лечение анорексии.")
elif 17.5 <= imt <= 23:
print("Ваш вес в норме. Похудения не требуется.")
elif 23.1 <= imt <= 35:
print("У вас избыточная масса тела. Настоятельно рекомендуется снижение веса.")
else:
print("У вас ожирение. Необходимо немедленное снижение массы тела.")
Андрей Высший разум (425764) 12 месяцев назад
Индекс массы тела - глупость, не учитывающая конституцию человека.
 weight = float(input("Введите ваш вес в килограммах: "))
height = float(input("Введите ваш рост в метрах: "))
imt = weight / height ** 2
print('Ваш индекс массы тела равен %.2f' % imt)
if imt < 17.5:
print("У вас недостаточная масса тела. Рекомендуется повышение веса или лечение анорексии.")
elif imt < 23:
print("Ваш вес в норме. Похудения не требуется.")
elif imt < 35:
print("У вас избыточная масса тела. Настоятельно рекомендуется снижение веса.")
else:
print("У вас ожирение. Необходимо немедленное снижение массы тела.")
Eugen Straf ИИ Профи (540) 12 месяцев назад
без= с
weight = float(input("Введите ваш вес в килограммах: "))
height = float(input("Введите ваш рост в метрах: "))
imt = round(weight / (height ** 2), 1)
print(f"Ваш индекс массы тела равен {imt}")
if imt < 17.5:
print("У вас недостаточная масса тела. Рекомендуется повышение веса или лечение анорексии.")
elif 17.5 < imt < 23:
print("Ваш вес в норме. Похудения не требуется.")
elif 23.1 < imt < 35:
print("У вас избыточная масса тела. Настоятельно рекомендуется снижение веса.")
else:
print("У вас ожирение. Необходимо немедленное снижение массы тела.")
Похожие вопросы