Для студентов МГТУ им. Н.Э.Баумана по предмету Объектно-ориентированное программирование (ООП)ДЗ С02ДЗ С02
5,0052
2021-07-082021-07-08СтудИзба
Лабораторная работа: ДЗ С02
Описание
Разработать объектно-ориентированную программу ходов комплексной шахматной фигуры Prince, которая объединяет свойства фигур Bishop и Knight со следующей схемой угроз. Программная реализация должна предусматривать множественное наследование базового суперкласса абстрактной фигуры и производных составляющих подклассов с перегрузкой метода виртуальной атаки для них и в их общем подклассе комплексной фигуры. Начальная позиция фигуры (по умолчанию a1) должна задаваться аргументом командной строки вызова программы. Перестановка фигуры должна производиться по запросам новой позиции записями строк потока стандартного ввода в шахматной нотации. Стандартный вывод программы должен отображать клетки шахматной доски, которым угрожает заданная фигура из любой позиции, куда она может быть установлена. Клетки угроз должны быть обозначены знаками + и x по атакам составляющих фигур. Клетка, занятая самой фигурой должна маркироваться ее литерой, а остальные клетки для наглядности должны заполняться точками. Горизонтали и вертикали изображения шахматной доски должны маркироваться цифрами 8−1 и буквами a−h по ее краям. Шахматные координаты текущей позиции и запрос их для новой позиции фигуры должны отображаться под отображением схемы угроз. Выход из программы должен происходить при перестановке фигуры с нарушением правил ее хода. Программный код должен предусматривать виртуальное множественное наследование базового суперкласса абстрактной фигуры, где специфицированы защищенное позиционное поле с чистой атакой из него и идентификацией типа. Кроме того, в базовом классе должен быть реализован публичный метод индикации дифференциальных угроз по клеткам доски, а также публичная перегрузка операций адресации, сравнения, перестановки и потокового ввода-вывода позиции фигуры. Позиционный контроль должен обеспечивать статический метод. Производные публичные подклассы базового суперкласса должны специфицировать публичную перегрузку методов виртуальных атак и идентификации типа для составляющих фигур. Производный подкласс комплексной фигуры должен быть образован множественным наследованием подклассов составляющих фигур с публичной перегрузкой виртуальной атаки и идентификации типа. Конструкторы всех подклассов должны обеспечивать вызов конструктора базового суперкласса для инициализации позиции фигуры, по его адресному аргументу. Для множественного наследования должны быть предусмотрены конструкторы без аргументов.
Характеристики лабораторной работы
Учебное заведение
Семестр
Просмотров
91
Размер
13,3 Kb
Список файлов
dz_1_c02.docx
Регистрируйся по моей ссылке studizba.com/l/CHINGIZZZ175 или используй CHINGIZZZ175 в своем личном кабинете и получай 100 баллов, которые можно потратить на оплату файлов! Лучшая криптобиржа bybit.com/invite?ref=79M6LR, отличный доп. заработок!