Блок задач

2. OOC

Темы
Сложность 4

Задача «Шахматные фигуры»

Необходимо разработать программу, которая размещает на шахматной доске фигуры и проверяет бьют ли они друг друга.

Входные данные

Текстовый файл с названием и расположением фигур. Пример:

king 0 0
queen 5 1
rook 1 3
bishop 3 7
knight  5 5

Поддерживаемые записи во входном файле:

  • king x y — король с координатами (x, y)
  • queen x y — ферзь с координатами (x, y)
  • rook x y — ладья с координатами (x, y)
  • bishop x y — слон с координатами (x, y)
  • knight x y — конь с координатами (x, y)

В исходных данных могут встречаться все фигуры кроме пешек. Количество фигур в исходных данных более 1 и не превышает 10. Фигуры могут повторяться. В рамках задачи предполагаем, что координаты фигур в исходном файле изначально заданы корректно (в пределах доски 8x8) и все фигуры расположены в разных клетках.

Выходные данные

Отрисовка псевдографикой в консоль.

Реализация

Необходимо создать все фигуры, нарисовать расположение на экране, проверить бьют ли они друг друга, и вывести на экран список какая фигура кого бьёт.

Иерархия классов объектов:

Piece
|- King
|- Queen
|- Rook
|- Bishop
+- Knight

Примечание

Задача должна быть реализована на базе фреймворка OOC.