Генерируется декартовый лабиринт с закрашенным ячейками, изображение которого визуализировано. Пользователь выбирает точку входа. После нажатия на кнопку Play появляется самый короткий найденный путь. Есть возможность пошагово пройти по шагам алгоритма нахождения пути. При невозможности найти выход из лабиринта пользователь получает уведомление.
- Выбор размера лабиринта
- Выбор конкретной точки выхода и выхода
- Возможность сохранять и загружать конфигурацию из файла
- Просмотр посещенных алгоритмом вершин
Основная структура данных - матрица.
- 0 - Пустая клетка
- 1 - Стенка
- 2 - Найденный путь
- 3 - Возможные для посещения клетки
- 4 - Посещенные клетки
- s - Старт
- f - Финиш
- Используется алгоритм А*
- Начальная и конечная точка
- Размер лабиринта
- Экземпляр лабиринта (опционально)
Визуальный вывод лабиринта:
- Конечный пройденный маршрут;
- Возможность пошагово пройти маршрут;
- Каждая задача - отдельная ветка
- Создание ветки
- git pull
- git checkout -b Issue_name В мастер мержить ЗАПРЕЩЕНО.
- После подготовки файлов - коммит
- git add -A
- git commit -m "Comment"
- Отправление изменений на сервер
- git push
- Создание Pull Request с названием close #(issue_number) и необходимыми комментариями. Если задача недовыполнена - использовать префикс WIP в пулл-реквесте
- 1-я неделя.
Подготовка основного кода программы
- Анализ задачи и выбор алгоритма, исходных данных и используемых структур данных;
- Нарисовать примерный вид интерфейса программы;
- Согласование формата данных в файле;
- 2-я неделя.
Завершение работы над проектом
- Создание gui;
- Реализация алгоритма поиска;
- Объединение всех задач в единую программу;
- Тестирование.
- Добавление доп. возможностей
- Трушников Андрей
- Создание гуи
- Вологдин Максим
- Программирование основной логики
- Тарасенко Егор
- Тестирование
- Написание отчета
- Менеджер по интеграции