This repository has been archived by the owner. It is now read-only.
Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
25 lines (17 sloc) 2.42 KB

Играта "живот"

Играта "живот" на Конуей е вид клетъчен автомат. Играта се играе от 0 (нула) на брой играчи, върху повърхнина разделена на квадратни клетки. Всяка клетка е или жива, или мъртва. "Играта" протича чиято на ходове, като състоянието на всеки ход се определя от състоянието на предишния и от следните правила (из wikipedia):

  1. Всяка жива клетка с по-малко от две живи съседни клетки умира (от самота).
  2. Всяка жива клетка с повече от три живи съседни клетки умира (от пренаселеност).
  3. Всяка жива клетка с две или три живи съседни клетки остава жива и на следващата итерация.
  4. Всяка мъртва клетка с точно три живи съседни клетки се превръща в жива клетка.

Имплементирайте автомата, така че да може да работи с Безкрайна равнина и поне още една от следните топологии:

  • Ограничена повърхнина (без wrap-ване по краищата)
  • Тор (с wrap-ване по краищата)

Дайте възможност за дефиниране на начално състояние.

Всяко следващо състояние трябва да може да бъде визуализирано. За визуализция използвайте текстов терминал.

Изберете и имплементирайте поне едно от следните допълнителни задания:

  • механизъм за лесно дефиниране на други правила за клетъчни автомати
  • шестоъгълни/триъгълни клетки
  • още топологии (бутилка на Клайн, цилиндър и т.н.)
  • GUI визуализация
  • нещо по ваш избор (след като го съгласувате с нас)