TG Telegram Group & Channel
[PYTHON:TODAY] | United States America (US)
Create: Update:

🔥 Прокачиваем Python + здоровье за 15 минут

Мини-программа, скрипт, который считает ИМТ (индекс массы тела) и классифицирует результат по всем канонам ВОЗ.

👨‍💻 Что умеет:
🖱 Учитывает все категории: от недостатка веса до ожирения III степени;
🖱 Работает в терминале, как интерактивное меню;
🖱 Чистый код с аннотациями и обработкой ошибок;
🖱 Подойдёт новичкам и не только.

from typing import Optional


def calculate_bmi(weight: float, height: float) -> Optional[float]:
"""Вычисляет индекс массы тела (ИМТ)."""
try:
bmi = weight / (height ** 2)
return round(bmi, 2)
except ZeroDivisionError:
print(" Рост не может быть равен нулю.")
return None


def interpret_bmi(bmi: float) -> str:
"""Интерпретирует значение ИМТ по классификации ВОЗ."""
if bmi < 18.5:
return "Недостаточный вес"
elif 18.5 <= bmi < 25:
return "Нормальный вес"
elif 25 <= bmi < 30:
return "Избыточный вес"
elif 30 <= bmi < 35:
return "Ожирение I степени"
elif 35 <= bmi < 40:
return "Ожирение II степени"
else:
return "Ожирение III степени"


def main() -> None:
print("🧮 Калькулятор Индекса Массы Тела (ИМТ)")

while True:
print("\nМеню:")
print("1. Рассчитать ИМТ")
print("2. Выйти")

choice = input("Выберите действие (1-2): ").strip()

if choice == "1":
try:
weight = float(input("Введите вес (кг): ").strip())
height = float(input("Введите рост (в метрах): ").strip())
bmi = calculate_bmi(weight, height)
if bmi is not None:
category = interpret_bmi(bmi)
print(f"\nВаш ИМТ: {bmi}")
print(f"Категория: {category}")
except ValueError:
print(" Пожалуйста, введите числовые значения.")
elif choice == "2":
print("До встречи! 🖖")
break
else:
print("Неверный выбор. Попробуйте снова.")


if __name__ == "__main__":
main()


💡 Минимум кода — максимум пользы.

Сохраняй себе и делись с другом, которому давно пора в зал 🙌

@python2day

#python #code #soft

🔥 Прокачиваем Python + здоровье за 15 минут

Мини-программа, скрипт, который считает ИМТ (индекс массы тела) и классифицирует результат по всем канонам ВОЗ.

👨‍💻 Что умеет:
🖱 Учитывает все категории: от недостатка веса до ожирения III степени;
🖱 Работает в терминале, как интерактивное меню;
🖱 Чистый код с аннотациями и обработкой ошибок;
🖱 Подойдёт новичкам и не только.

from typing import Optional


def calculate_bmi(weight: float, height: float) -> Optional[float]:
"""Вычисляет индекс массы тела (ИМТ)."""
try:
bmi = weight / (height ** 2)
return round(bmi, 2)
except ZeroDivisionError:
print(" Рост не может быть равен нулю.")
return None


def interpret_bmi(bmi: float) -> str:
"""Интерпретирует значение ИМТ по классификации ВОЗ."""
if bmi < 18.5:
return "Недостаточный вес"
elif 18.5 <= bmi < 25:
return "Нормальный вес"
elif 25 <= bmi < 30:
return "Избыточный вес"
elif 30 <= bmi < 35:
return "Ожирение I степени"
elif 35 <= bmi < 40:
return "Ожирение II степени"
else:
return "Ожирение III степени"


def main() -> None:
print("🧮 Калькулятор Индекса Массы Тела (ИМТ)")

while True:
print("\nМеню:")
print("1. Рассчитать ИМТ")
print("2. Выйти")

choice = input("Выберите действие (1-2): ").strip()

if choice == "1":
try:
weight = float(input("Введите вес (кг): ").strip())
height = float(input("Введите рост (в метрах): ").strip())
bmi = calculate_bmi(weight, height)
if bmi is not None:
category = interpret_bmi(bmi)
print(f"\nВаш ИМТ: {bmi}")
print(f"Категория: {category}")
except ValueError:
print(" Пожалуйста, введите числовые значения.")
elif choice == "2":
print("До встречи! 🖖")
break
else:
print("Неверный выбор. Попробуйте снова.")


if __name__ == "__main__":
main()


💡 Минимум кода — максимум пользы.

Сохраняй себе и делись с другом, которому давно пора в зал 🙌

@python2day

#python #code #soft
Please open Telegram to view this post
VIEW IN TELEGRAM


>>Click here to continue<<

[PYTHON:TODAY]






Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)