Середній
+500 XP

👋 Починай вчитися JavaScript прямо зараз — безкоштовно!

🚀

Залік: Гра «Хрестики-нулики»

Напиши повноцінну гру за 1–2 години, використавши все що вивчив

🎓

Це твій фінальний залік!

Уяви, що ти навчився готувати окремі страви: різати овочі, варити бульйон, смажити м'ясо. Фінальний залік — це приготувати повноцінну вечерю. Тут ти поєднаєш змінні, масиви, функції, цикли та умови в одному живому проєкті.

Що ми будуємо

Гра «Хрестики-нулики» для двох гравців. Дошка 3×3, перший гравець — X, другий — O. Хто перший збере три в ряд (горизонталь, вертикаль або діагональ) — перемагає.

Проєкт складається з 5 кроків, кожен — це окреме завдання. Виконуй по порядку.

Архітектура гри

Пеш ніж кодувати, треба розбити задачу на частини:

  1. Дошка — масив 3×3, де кожна клітинка null, 'X' або 'O'
  2. Хід — функція makeMove(board, row, col, player)
  3. Перевірка переможця — функція checkWinner(board)'X', 'O' або null
  4. Нічия — функція isDraw(board)
  5. Ігрова петля — керує чергуванням гравців і завершенням гри
javascript
💬

Дошка — це масив масивів (матриця 3×3). null означає порожню клітинку.

💡

Підказка про рядки і стовпці

board[0][0] — лівий верхній кут. board[1][1] — центр. board[2][2] — правий нижній. Перший індекс — рядок (row), другий — стовпець (col).

Як перевірити переможця

Потрібно перевірити 8 комбінацій:

  • 3 горизонталі (рядки 0, 1, 2)
  • 3 вертикалі (стовпці 0, 1, 2)
  • 2 діагоналі (головна та побічна)

Якщо всі три клітинки в лінії однакові і не null — є переможець.

javascript
💬

Перебираємо всі 8 ліній і перевіряємо чи всі три клітинки однакові.

Готовий? Виконуй завдання по порядку!

Кожне завдання будує наступне. Коли виконаєш усі 5 — у тебе буде повноцінна гра. Не підглядай у рішення одразу — спробуй сам хоча б 10–15 хвилин.

Коментарі

Увійти або Почати щоб залишити коментар.