Игра «Крестики-нолики»

«Крестики-нолики» — логическая игра между двумя противниками на квадратном поле 3 на 3 клетки. Игроки по очереди ставят на свободные клетки поля 3х3 знаки (один всегда крестики, другой всегда нолики). Первый, выстроивший в ряд 3 своих фигуры по вертикали, горизонтали или диагонали, выигрывает. Первый ход делает игрок, ставящий крестики.

Обычно по завершении партии выигравшая сторона зачёркивает чертой свои три знака (нолика или крестика), составляющих сплошной ряд.

Задание

Разработайте игру «Крестики-нолики». Игра ведется между двумя живыми игроками. Победитель определяется по результатм одного раунда. В качестве инстумента для разработке графического интерфейса используйте библиотеку Pygame.

Заранее продумайте структуру вашей программы. Какие классы можно выделить при разработке игры, какие у них будут свойства? При разработке руководствуйтесь принципами, описанными в занятии по теме «Декомпозиция».

Дополнительные задания

  1. Реализуйте ввод имени игрока

  2. Добавьте возможность игры против ПК

  3. Ведите подстчет очков

  4. Сохраняйте результаты игр в отдельный файл