mr-wo/guess-number

Console Guess-number game (variant 2)

Maintainers

Package info

github.com/Kulebyaka1337/guess-number

Type:project

pkg:composer/mr-wo/guess-number

Statistics

Installs: 2

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v1.5.0 2025-10-28 15:11 UTC

This package is auto-updated.

Last update: 2026-03-28 16:07:48 UTC


README

Описание проекта

Программа для консольной игры "Угадай число" с сохранением данных в базе SQLite через ORM-библиотеку RedBeanPHP.

Правила игры

Компьютер загадывает число в диапазоне от 1 до максимального числа, указанного в настройках. Игрок должен угадать число за несколько попыток (максимальное количество также задаётся в настройках).

После каждой попытки программа сообщает:

  • если число игрока больше загаданного — выводит "меньше";
  • если число игрока меньше загаданного — выводит "больше".

Сохраняемая информация

Информация о каждой игре сохраняется в базе данных SQLite:

  • дата игры;
  • имя игрока;
  • максимально возможное число;
  • загаданное число;
  • исход игры (угадал/не угадал);
  • список всех попыток (номер, введённое число, ответ компьютера).

Теперь все операции с базой данных выполняются через ORM (RedBeanPHP), SQL-запросы напрямую не используются.

Режимы работы программы
  1. Новая игра.
  2. Список сохранённых игр.
  3. Список игр, в которых игрок победил.
  4. Список игр, в которых игрок проиграл.
  5. Статистика по игрокам (кол-во побед и поражений, сортировка по победам).
  6. Повтор любой сохранённой партии (показ всех ходов).
Требования для запуска проекта
  • PHP >= 8.0 (CLI-режим)
  • Composer (Глобально установленный)
  • SQLite (Для хранения данных проекта)
  • RedBeanPHP (устанавливается через Composer)
Установка и запуск

1. Клонировать репозиторий:

git clone https://github.com/Kulebyaka1337/guess-number.git
cd guess-number

2. Установка зависимости:

composer install

3. Сгенерировать автозагрузку:

composer dump-autoload -o

4. 4. Запустить проект:

./bin/guess-number.php

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

Task05/ └─ guess-number/ ├─ bin/ │ └─ guess-number # Запускной скрипт ├─ src/ │ ├─ Controller.php # Логика игры │ ├─ Database.php # Работа с базой через ORM │ ├─ Game.php # Логика игрового процесса │ └─ View.php # Отображение и ввод данных ├─ data/ │ └─ games.sqlite # База данных SQLite ├─ vendor/ │ ├─ composer │ └─ autoload.php ├─ .gitignore ├─ composer.json # Настройки Composer ├─ composer.lock └─ README.md # Документация

Автор SergeevSergey (Kulebyaka1337)