Над задачей работали: Грашин Дмитрий и Акопян Алексей.
Правила игры:
- Место действия игры - клеточное поле. Его размер ты можешь указать сам или сделать бесконечным/зацикленным
- Поколение - это одна итерация изменения поля
- Каждая клетка может иметь два состояния: заполнена (жива), пуста (мертва)
- У каждой клетки есть соседи - 8 соседних клеток
- В пустой клетке, рядом с которой ровно три заполненные клетки, зарождается жизнь
- Если у заполненной клетки три или два заполненных соседа, то она продолжает быть заполненной
- В противном случае, если соседей меньше двух или больше трёх, клетка умирает («от одиночества» или «от перенаселённости»).
Программный код написан на языке Python. Изначально задается размер поля и количество итераций. Далее запускается процесс инициализации начального положения поля. Ячейки выбираются при помощи нажатия на ячейку. Используемые библиотеки:
- numpy - для задания изображения
- opencv - для визуализации игры
Скачать репозиторий:
gh repo clone grashin/life_megafon_project
Установить Requirements:
pip install numpy opencv
Запустить игру можно двумя способами:
- открыть исполняемый файл Game of Life
- запустить исходный код из командной строки:
python /src/script.py
Пример работы выложен здесь.