Files
math/README.md
Dmitry Bikulov d1bb3559bb Initial commit
2025-09-11 13:42:53 +03:00

32 lines
1.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Multiplication Table Trainer (FastAPI)
Запуск локально
- Установите зависимости: `pip install fastapi uvicorn`
- Запустите сервер: `uvicorn app.main:app --reload`
- Откройте в браузере: `http://127.0.0.1:8000/`
Docker
- Сборка: `docker build -t mult-trainer .`
- Запуск: `docker run --rm -p 8000:8000 mult-trainer`
- Переменная порта: `-e PORT=8000` (по умолчанию 8000)
Описание
- Кнопка «Старт» начинает сессию: 20 примеров, 60 секунд.
- На экране крупно показывается пример (например, «6 × 8») и 4 варианта ответа, один из которых правильный.
- Сервер проверяет ответы и ограничение по времени. По завершении показывается результат.
- В рамках одной сессии примеры не повторяются (исключены зеркальные дубли вида 6×8 и 8×6).
API
- POST `/api/session/start` → { session_id, total_questions, duration_seconds, remaining_seconds, question }
- POST `/api/session/{session_id}/answer` body: { answer } → { correct, finished, reason, remaining_seconds, score, question? }
- GET `/api/session/{session_id}/state` → текущее состояние (для возможного опроса)
Замечания
- Сессии хранятся в памяти процесса и сбрасываются при перезапуске.
- Диапазон множителей — от 2 до 9, ошибки сгенерированы правдоподобно (соседние произведения, небольшие смещения).