Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Тема. Абстрактные классы, наследование, полиморфизм
Общая часть
Вариант выбирается следующим образом: получить остаток от деления № студента по списку в электронном университете на число вариантов, если остаток равен нулю, то берется последний вариант, если остаток не равен нулю, то это есть номер варианта.
В работе создается оконное приложение Windows
Создать абстрактный класс- «геометрическая фигура» (на экране). Класс содержит следующие поля: координаты геометрического центра фигуры на экране, поле, задающее размер фигуры (например, расстояние от центра о вершины или радиус окружности в пикселях), поле, задающее угловое положение фигуры, поле, задающее угловую скорость вращения фигуры, поле, определяющее направление движения (возможно два варианта: движение по вертикали и движение по горизонтали), поле, определяющее скорость движения, и поле, определяющее цвет фигуры, при необходимости можно включить другие поля. Класс включает: конструктор для инициализации полей, функцию, изменяющую угловое положение фигуры и положение на экране во время движения за один такт времени, и чистую виртуальную функцию (или функции) для рисования и стирания фигуры на экране.
На основе абстрактного класса «фигура» разработать программу, содержащую описание трех графических классов: отрезок, квадрат, правильный восьмиугольник. Создать несколько объектов каждого из трех классов (не менее трех) для этого использовать один массив указателей типа базового класса «фигура». Реализуя механизм полиморфизма, привести объекты классов в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями и в движение с отскоком от краев окна в заданном режиме (по горизонтали или по вертикали). При этом использовать обработку сообщений от таймера. Таймер периодически с интервалом несколько миллисекунд генерирует сообщение, при обработке сообщения стирается старая фигура и рисуется новая на новом месте.
На основе абстрактного класса «фигура» разработать программу, содержащую описание трех графических классов: окружность с вырезанной четвертью, ромб, правильный шестиугольник. Создать несколько объектов каждого из трех классов (не менее трех) для этого использовать один массив указателей типа базового класса «фигура». Реализуя механизм полиморфизма, привести объекты классов в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями и в движение с отскоком от краев окна в заданном режиме (по горизонтали или по вертикали). Таймер периодически с интервалом несколько миллисекунд генерирует сообщение, при обработке сообщения стирается старая фигура и рисуется новая на новом месте.
На основе абстрактного класса «фигура» разработать программу, содержащую описание трех графических классов: равносторонний треугольник, квадрат, правильный шестиугольник. Создать несколько объектов каждого из трех классов (не менее трех) для этого использовать один массив указателей типа базового класса «фигура». Реализуя механизм полиморфизма, привести объекты классов в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями и в движение с отскоком от краев окна в заданном режиме (по горизонтали или по вертикали). Таймер периодически с интервалом несколько миллисекунд генерирует сообщение, при обработке сообщения стирается старая фигура и рисуется новая на новом месте.
На основе абстрактного класса «фигура» разработать программу, содержащую описание трех графических классов: квадрат, пятиугольник, отрезок. Создать несколько объектов каждого из трех классов (не менее трех) для этого использовать один массив указателей типа базового класса «фигура». Реализуя механизм полиморфизма, привести объекты классов в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями и в движение с отскоком от краев окна в заданном режиме (по горизонтали или по вертикали). Таймер периодически с интервалом несколько миллисекунд генерирует сообщение, при обработке сообщения стирается старая фигура и рисуется новая на новом месте.
На основе абстрактного класса «фигура» разработать программу, содержащую описание трех графических классов: ромб, прямоугольник, шестиугольник. Создать несколько объектов каждого из трех классов (не менее трех) для этого использовать один массив указателей типа базового класса «фигура». Реализуя механизм полиморфизма, привести объекты классов в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями и в движение с отскоком от краев окна в заданном режиме (по горизонтали или по вертикали). Таймер периодически с интервалом несколько миллисекунд генерирует сообщение, при обработке сообщения стирается старая фигура и рисуется новая на новом месте.
На основе абстрактного класса «фигура» разработать программу, содержащую описание трех графических классов: пятиугольник, квадрат, отрезок. Создать несколько объектов каждого из трех классов (не менее трех) для этого использовать один массив указателей типа базового класса «фигура». Реализуя механизм полиморфизма, привести объекты классов в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями и в движение с отскоком от краев окна в заданном режиме (по горизонтали или по вертикали). Таймер периодически с интервалом несколько миллисекунд генерирует сообщение, при обработке сообщения стирается старая фигура и рисуется новая на новом месте.
На основе абстрактного класса «фигура» разработать программу, содержащую описание трех графических классов: круг с вырезанной четвертью, квадрат, треугольник. Создать несколько объектов каждого из трех классов (не менее трех) для этого использовать один массив указателей типа базового класса «фигура». Реализуя механизм полиморфизма, привести объекты классов в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями и в движение с отскоком от краев окна в заданном режиме (по горизонтали или по вертикали). Таймер периодически с интервалом несколько миллисекунд генерирует сообщение, при обработке сообщения стирается старая фигура и рисуется новая на новом месте.
На основе абстрактного класса «фигура» разработать программу, содержащую описание трех графических классов: круг с вырезанной четвертью, шестиугольник, ромб. Создать несколько объектов каждого из трех классов (не менее трех) для этого использовать один массив указателей типа базового класса «фигура». Реализуя механизм полиморфизма, привести объекты классов в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями и в движение с отскоком от краев окна в заданном режиме (по горизонтали или по вертикали). Таймер периодически с интервалом несколько миллисекунд генерирует сообщение, при обработке сообщения стирается старая фигура и рисуется новая на новом месте.
На основе абстрактного класса «фигура» разработать программу, содержащую описание трех графических классов: отрезок, шестиугольник, треугольник. Создать несколько объектов каждого из трех классов (не менее трех) для этого использовать один массив указателей типа базового класса «фигура». Реализуя механизм полиморфизма, привести объекты классов в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями и в движение с отскоком от краев окна в заданном режиме (по горизонтали или по вертикали). Таймер периодически с интервалом несколько миллисекунд генерирует сообщение, при обработке сообщения стирается старая фигура и рисуется новая на новом месте.
На основе абстрактного класса «фигура» разработать программу, содержащую описание трех графических классов: половина круга, отрезок, треугольник. Создать несколько объектов каждого из трех классов (не менее трех) для этого использовать один массив указателей типа базового класса «фигура». Реализуя механизм полиморфизма, привести объекты классов в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями и в движение с отскоком от краев окна в заданном режиме (по горизонтали или по вертикали). Таймер периодически с интервалом несколько миллисекунд генерирует сообщение, при обработке сообщения стирается старая фигура и рисуется новая на новом месте.