مسیرها
/
ARM64 Assembly
ARM64 Assembly
/
تمرین‌ها
/
بازی زندگی کانوی
بازی زندگی کانوی

بازی زندگی کانوی

دشوار

مقدمه

بازی زندگی کانوی یک اتوماتای سلولی شگفت‌انگیز است که در سال ۱۹۷۰ جان هورتون کانوی، ریاضیدان بریتانیایی، آن را ابداع کرد.

این بازی از یک شبکه‌ی دوبعدی از سلول‌ها تشکیل شده است که هر سلول می‌تواند «زنده» یا «مرده» باشد.

پس از هر نسل، سلول‌ها بر اساس مجموعه‌ای از قواعد با هشت همسایه‌ی خود تعامل می‌کنند و همین قواعد نسل جدید را تعیین می‌کنند.

دستورالعمل‌ها

پس از هر نسل، سلول‌ها با هشت همسایه‌ی خود تعامل می‌کنند؛ همسایه‌ها سلول‌هایی هستند که به‌صورت افقی، عمودی یا مورب مجاور یکدیگر قرار دارند.

قواعد زیر برای هر سلول اعمال می‌شود:

  • هر سلول زنده‌ای که دو یا سه همسایه‌ی زنده دارد، زنده می‌ماند.
  • هر سلول مرده‌ای که دقیقاً سه همسایه‌ی زنده دارد، به سلول زنده تبدیل می‌شود.
  • همه‌ی سلول‌های دیگر می‌میرند یا مرده می‌مانند.

ماتریسی از ۱ها و ۰ها (متناظر با سلول‌های زنده و مرده) در اختیار دارید؛ قواعد را روی هر سلول اعمال کنید و نسل بعدی را برگردانید.

پیاده‌سازی

هر سطر از شبکه به‌صورت یک عدد صحیح ۶۴بیتی نمایش داده می‌شود.

برای مثال،

    0 1 0
    1 0 0
    1 1 0

به‌صورت زیر نمایش داده می‌شود:

0b010
0b100
0b110

شبکه حداکثر ۶۴ ستون دارد.


منبع

Wikipediaاین لینک در پنجره یا تب جدیدی باز می‌شود.
ویرایش از طریق GitHub این لینک در پنجره یا زبانه‌ی جدیدی باز می‌شود
ARM64 Assembly Exercism

آماده‌اید بازی زندگی کانوی را شروع کنید؟

در Exercism ثبت‌نام کنید تا ARM64 Assembly را همراه با 78 تمرین و مربی‌گری انسانی واقعی یاد بگیرید و در آن استاد شوید، همه‌ی این‌ها رایگان.