Сарай №XII
(Юрий Зинковский)
Мой блог.
(Юрий Зинковский)
Мой блог.
Игра "Жизнь"
Запись от zink0000 размещена 28.07.2016 в 11:24
Показов 2769
Комментарии 0
Метки game of life, игра "жизнь", программа
|
Программа - игра "Жизнь" (Game of Life). Алгоритм этой программы был изложен в журнале Scientific American (Martin Gardner - статья Mathematical games - журнал Scientific American за октябрь 1970 года, страница 120). Напомню правила расчёта следующего шага развития популяции, если кто забыл: 1. Обитатель ячейки выживает, если рядом есть две или три занятые соседние ячейки. Соседними считаются ячейки, которые имеют общую сторону или общую вершину. 2. Обитатель ячейки погибает и ячейка становится незанятой, если она окружена четырьмя и более занятыми ячейками (перенаселение), а также если около неё имеется только одна соседняя обитаемая ячейка или вообще нет соседей (изоляция). 3. Рождение в незанятой ячейке происходит только в том случае, если около этой ячейки имеются ровно три соседние обитаемые ячейки. Игра происходит на поверхности, которая условно считается бесконечной. На самом деле это конечная прямоугольная плоскость, верхняя граница которой соединяется с нижней, а левая граница - с правой. То есть на поверхности тора. Генерируем случайную начальную популяцию. Занятые поля на экране обозначаются звёздочками, в то время как незанятые поля остаются тёмными. (По крайней мере, так было в оригинале.) Из начальной популяции развивается следующее поколение в соответствии с вышеназванными правилами. Кстати, эта программа не так уж и бесполезна и может быть использована для решения научных задач (конечно, с другими правилами), к примеру для моделирования процессов фазовых превращений. Движок игры, если в данном случае так можно выразится это:
и расчёт следующего поколения в таймере:
_Игра Жизнь 01.zip А вот как это выглядит: | ||||||||||
Метки game of life, игра "жизнь", программа
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 0
Комментарии


