modrakir / progression
Arithmetic Progression CLI Game
v1.0
2026-02-28 11:57 UTC
Requires
- php: >=8.0
- ext-pdo_sqlite: *
- wp-cli/php-cli-tools: ^0.11
README
Описание проекта
Проект включает разработку игры "Арифметическая прогрессия" с использованием реляционной базы данных для сохранения результатов игр. Игра реализована на языке PHP с использованием базы данных SQLite. Пользователям предоставляется возможность просматривать историю игр.
Цель игры — определить пропущенное число в арифметической прогрессии из 10 элементов. Прогрессия генерируется со случайным начальным числом и случайным шагом. Одно из чисел (на случайной позиции) скрыто — игрок должен его угадать.
Правила игры
- Компьютер генерирует арифметическую прогрессию из 10 чисел со случайным шагом
- Одно из чисел на случайной позиции заменяется точками (
..) - Игрок должен определить скрытое число и ввести свой ответ
- После ответа выводится результат:
- Правильный ответ: поздравление игрока
- Неправильный ответ: сообщение об ошибке и показ полной прогрессии с правильным числом
Требования
- Генерация прогрессии: Арифметическая прогрессия из 10 элементов со случайным начальным числом и случайным шагом
- Сохранение данных: Вся информация об играх сохраняется в базе данных SQLite
- Хранение данных:
- Имя игрока
- Дата игры
- Результат игры (верно/ошибка)
- Прогрессия целиком
- Скрытое число и его позиция
- Ответ игрока
- Режимы работы:
- Новая игра
- Просмотр истории сохранённых игр
- Выход из программы
Окружение и требования для запуска
PHP:
- Версия: 8.0 или выше
- Расширения:
- Включите SQLite (
extension=pdo_sqlite) - Убедитесь, что настройки отображения ошибок (
display_errors) включены в режиме разработки
- Включите SQLite (
SQLite:
- Версия: 3.x
- Проверьте наличие прав записи в каталоге
data/, где хранится файл базы данных
Composer:
- Composer должен быть установлен глобально
- Используйте команду
composerдля управления зависимостями - Для установки Composer следуйте официальной документации
Установка и запуск проекта
-
Склонируйте репозиторий:
git clone https://github.com/Modrakir/progression
-
Перейдите в каталог проекта:
cd Task01/progression -
Установите зависимости через Composer:
composer install
-
Запустите игру:
php bin/progression
Или, если ваш пакет опубликован на Packagist, установите его глобально:
composer global require modrakir/progression
И затем выполните команду:
progression
Примечания
- Проверьте права на запись в каталог data/ с базой данных SQLite.
- Каталог vendor/ и файл data/game.db исключены из репозитория через .gitignore.
- Дополнительную информацию можно найти в документации:
- SQLite Documentation
- PHP Documentation
- Composer Documentation
- wp-cli/php-cli-tools