Предмет: Информатика, автор: Аноним

Напишите скрипт на Python с библиотекой telebot, ИМТ-калькулятор, где вы будете выбирать свой пол, после чего вводить рост и вес. На основе роста и пола будет рассчитываться ваш идеальный вес, а на основе роста и веса - ваш жир и ИМТ.

Ответы

Автор ответа: Chara09
1

Ответ:

Для начала, вам нужно установить библиотеку telebot. Вы можете сделать это с помощью pip:

'pip install pyTelegramBotAPI'

После установки библиотеки, вы можете использовать следующий код для создания ИМТ-калькулятора:

import telebot

from telebot import types

bot = telebot.TeleBot('YOUR_BOT_TOKEN')

@bot.message_handler(commands=['start'])

def start(message):

   markup = types.ReplyKeyboardMarkup(resize_keyboard=True)

   item1 = types.KeyboardButton("Мужчина")

   item2 = types.KeyboardButton("Женщина")

   markup.add(item1, item2)

   bot.send_message(message.chat.id, 'Выберите ваш пол', reply_markup=markup)

@bot.message_handler(content_types=['text'])

def get_gender(message):

   if message.text == 'Мужчина':

       bot.send_message(message.chat.id, 'Введите ваш рост в см')

       bot.register_next_step_handler(message, get_height_male)

   elif message.text == 'Женщина':

       bot.send_message(message.chat.id, 'Введите ваш рост в см')

       bot.register_next_step_handler(message, get_height_female)

def get_height_male(message):

   global height

   height = int(message.text)

   bot.send_message(message.chat.id, 'Введите ваш вес в кг')

   bot.register_next_step_handler(message, get_weight_male)

def get_height_female(message):

   global height

   height = int(message.text)

   bot.send_message(message.chat.id, 'Введите ваш вес в кг')

   bot.register_next_step_handler(message, get_weight_female)

def get_weight_male(message):

   weight = int(message.text)

   ideal_weight = height - 100

   body_mass_index = weight / ((height / 100) ** 2)

   bot.send_message(message.chat.id, f'Ваш идеальный вес: {ideal_weight} кг\nВаш ИМТ: {body_mass_index}')

def get_weight_female(message):

   weight = int(message.text)

   ideal_weight = height - 110

   body_mass_index = weight / ((height / 100) ** 2)

   bot.send_message(message.chat.id, f'Ваш идеальный вес: {ideal_weight} кг\nВаш ИМТ: {body_mass_index}')

bot.polling(none_stop=True)

В этом коде, мы создаем бота, который запрашивает пол пользователя, затем его рост и вес. Затем, исходя из введенных данных, он вычисляет идеальный вес и ИМТ.

Пожалуйста, замените 'YOUR_BOT_TOKEN' на токен вашего бота, который вы получили от BotFather в Telegram.

Этот код не учитывает жир в теле, поэтому для более точного расчета вам нужно добавить эту функцию.


Chara09: для таких задач советую использовать нейронку - https://coder.deepseek.com/chat
Похожие вопросы
Предмет: Математика, автор: mariashako999
Предмет: Английский язык, автор: oleksandrafasij