КОМПЛЕКТ №3 – Игровые программы

Тема 1. Игра“Тетрис”.

Создать классы, соответствующие следующей иерархии:

КОМПЛЕКТ №3 – Игровые программы - student2.ru

В начале падения новой фигуры объект класса «Фигура» должен создаваться, а при окончании падения этот объект должен уничтожаться, а принадлежащие ему квадраты должны «передаваться» объекту «Игровое поле».

Тема 2.Игра «Питон» («Змейка»).

Использовать иерархию классов:

КОМПЛЕКТ №3 – Игровые программы - student2.ru

Класс «Фигура» должен содержать виртуальную функцию отображения. Запуск цикла игры реализовать как метод класса «Игровое поле». Сделать возможным существование на поле двух питонов, управляемых разными игроками.

Тема 3.Игра «Морской бой». Создать классы согласно следующей иерархии:

КОМПЛЕКТ №3 – Игровые программы - student2.ru

Реализовать метод отображения палубы в двух разных состояниях : целая и подбитая, а также метод отображения игрового поля ( в зависимости от его вида: свое поле (неподбитые корабли показаны) и чужое поле (неподбитые корабли скрыты). Реализовать для игрового поля два метода выполнения хода: с запросом (с помощью ввода с клавиатуры или управления курсором) и с помощью случайной генерации.

Тема 4.Игра «Облавные шашки» («Окружение»).

Противники поочередно делают ходы черными и белыми фишками. Когда игрок делает ход, фишки противника, оказавшиеся на прямых линиях между уже имеющимися фишками игрока, и новой фишкой, переходят к игроку (на этих прямых не должно быть пустых ячеек). Игра идет, пока не заполнены все клетки поля, или пока один из игроков не потеряет все фишки. Выигрывает тот, у кого к концу оказывается больше фишек.

a) начало игры:

               
               
               
           
           
               
               
               

б) играющий белыми фишками сделал ход:

               
               
               
         
           
               
               
               

в) фишка противника переходит к игроку



               
               
               
         
           
               
               
               

Использовать следующую иерархию классов:

КОМПЛЕКТ №3 – Игровые программы - student2.ru

Обеспечить поддержку сохранения и загрузки игры с использованием перегрузки операций чтения/записи в поток для классов «Игровое поле» и «Игрок». Обеспечить запоминание в файле десятки лучших с помощью перегрузки этих же операторов для класса «Список десятки лучших». Класс «Игрок» должен содержать виртуальную функцию «Выполнить ход». Для человека она реализуется с запросом хода с клавиатуры. Для машины использовать «жадную» стратегию выполнения хода: при каждом ходе игрок забирает максимально возможное количество фишек противника.

Тема 5.ИграШахматы. Реализовать класс «Игровое поле», иерархию «Фигура»-«Конкретная фигура». Реализовать метод вывода фигуры на экран. Класс «Фигура» должен содержать виртуальную функцию проверки допустимости указанного хода, а классы для конкретных фигур – ее реализации с учетом правил выполнения ходов для каждого вида фигуры. Для класса «Игровое поле» определить методы запроса хода (поочередно для противников), выполнения хода, «съедания» фигуры противника, вывода сообщения о нахождении фигуры под боем, шахе и мате. Предусмотреть возможность сохранения и загрузки игры с помощью ввода/вывода в поток.

Тема6. Логическая игра “Крестики-нолики”

Приложение является реализацией известной логической игры “Крестики-нолики” В данной реализации предусматривается игра двух игроков на неограниченном поле. Цель игры . построить непрерывную линию из пяти или более фишек (крестиков или ноликов) по горизонтали, вертикали или диагонали. Возможны два режима игры, когда выигрывает тот, кто первым построит линию, или кто больше наберет очков за определенное количество времени. Во втором случае количество построенных линий не ограничено, каждая фишка в линии приносит игроку одно очко. Приложение должно обеспечивать начало новой игры на чистом поле, а также проверку соответствия действий игроков правилам игры и условия окончания игры. Роль одного из игроков (по выбору пользователя) может выполнять компьютер. Для исключения возможности образования изолированных игр на одном поле и неоправданного увеличения размера поля следует установить максимально допустимое расстояние (не более пяти) от уже существующих фишек до новой, размещаемой игроком.

Наши рекомендации