Формула Жизни

Mar 21, 2021 15:03

Я вывел Формулу Жизни - и она работает! Подробности под катом.

Вот она, в экселевском виде:

=ЕСЛИ(ABS(СУММ(A1:C3)-B2/2-3)<1;1;0)

aaamibor напомнил в комментариях про игру "Жизнь", с которой также знакомы многие френды, включая spamsink. Решив смоделировать ее при помощи Excel, обозначил живые клетки за 1, а мертвые за 0 (а как иначе).

Правила "Жизни" таковы, что на состояние каждой клетки на следующем ходу влияет ее собственное состояние плюс набор состояний ее окрестности Мура - восьми клеток вокруг (как в "Сапере"). Для простоты заменим окрестность на блок 3х3, включающий саму центральную клетку; тогда наборы состояний 1-3, 1-4 и 0-3 на следующем шагу порождают 1, все остальные (1-1, 1-2, 1-5...1-9, 0-0...0-2, 0-4...0-8) - 0.

Посопоставляв, понял, что наиболее короткой из рабочих будет формула с использованием функции модуля (ABS). Она представлена выше для ячейки B2 с окрестностью A1:C3. Модуль оказывается строго меньше 1 для трех нужных нам состояний 1-3, 1-4 и 0-3, и никак иначе.

числа, юмор, ©, игры

Previous post Next post
Up