Skip to content

ArtemSam86/math-solution-assistant

Repository files navigation

Представляем вашему вниманию нового помощника в мире математики – интерактивного Telegram-бота! Этот умный бот станет вашим незаменимым инструментом для решения самых разнообразных математических задач прямо в мессенджере.

Что умеет наш бот?

  • Решать уравнения: Забудьте о рутинных вычислениях! Бот справится с любыми уравнениями, будь то простые линейные, сложные тригонометрические или логарифмические.
  • Строить графики: Визуализируйте функции легко и быстро. Бот построит графики для линейных, квадратичных, тригонометрических, экспоненциальных и многих других типов функций.
  • Работать как продвинутый калькулятор: Выполняйте сложные вычисления, используя основные математические функции.
  • Показывать время по всему миру: Узнайте текущее время в любом уголке планеты.
  • Собирать статистику: Бот ведет учет своего использования, предоставляя ценную информацию.

Для вашего удобства бот оснащен интерактивными клавиатурами, которые делают взаимодействие максимально простым и интуитивно понятным.

Техническая сторона

Бот разработан на языке Python с использованием библиотеки python-telegram-bot для интеграции с Telegram. Для решения математических задач задействованы мощные библиотеки: sympy для работы с уравнениями, matplotlib для построения графиков и numpy для быстрых вычислений.

Структура проекта

Проект имеет четкую и логичную структуру, включающую:

  • bot.py: Точка входа для запуска бота.
  • bot_instance.py: Основной класс, отвечающий за настройку и работу бота.
  • handlers.py: Обработчики команд и сообщений от пользователей.
  • services.py: Модуль, объединяющий все основные сервисы бота (калькулятор, построитель графиков, решатель уравнений).
  • process_manager.py: Управление жизненным циклом процессов бота.
  • keyboards.py: Файл с определениями интерактивных клавиатур.
  • config.py: Конфигурационные параметры бота, включая токен.
  • database.py: Работа с базой данных SQLite для хранения статистики.
  • message_formatter.py: Форматирование выводимых сообщений.
  • graph_plotter.py: Логика построения графиков.
  • calculator.py: Реализация функционала калькулятора.
  • equation_solver.py: Модуль для решения уравнений.
  • utils.py: Вспомогательные функции для различных задач.

Как начать пользоваться?

  1. Убедитесь, что у вас установлен Python версии 3.8 или выше.
  2. Установите необходимые зависимости:
    pip install -r requirements.txt
  3. Создайте файл .env в корне проекта и добавьте в него ваш Telegram-бот токен, который можно получить у @BotFather:
    TELEGRAM_BOT_TOKEN=ваш_токен_здесь
  4. Запустите бота:
    python bot.py

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages