
Задания 2014 ООП / Домашние задания / ООП_DZ01
.docДомашние задания. Вариант 1
Задание 1. Turbo Delphi
Часть 1.1 Разработать иерархию классов Delphi. Поместить определение классов в отдельном модуле. Родитель - класс, позволяющий рисовать окружность некоторого размера с центром в точке, определенной нажатием левой клавиши мыши. Потомок - класс, позволяющий рисовать окружность того же размера с центром в точке, определенной нажатием правой клавиши мыши, и соединять ее с предыдущей окружностью линией.
Параметры задаются с использованием интерфейсных элементов.
В отчете привести диаграмму используемых классов Delphi и разработанных классов, граф состояний пользовательского интерфейса и объектную декомпозицию.
Часть 1.2. Разработать программу, содержащую описание трех графических объектов: отрезок, квадрат, правильный восьмиугольник.
Реализуя механизм полиморфизма, привести объекты в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями.
Задание 2. С++.
Часть 2.1. Функции.
Написать программу, определяющую количество целых чисел n (n вводится с клавиатуры), квадрат которых является палиндромом. Например: 262 – 676. Вывести на печать числа, квадраты и их количество.
Часть 2.2 Текстовая обработка.
Дана последовательность строк. Каждая строка состоит из слов, разделенных пробелами. Написать программу, обеспечивающую ввод строк и их корректировку. Корректировка заключается в удалении лишних пробелов и слов, состоящих из одного символа. Лишними считаются пробелы в начале и конце строки, а также более одного пробела между словами. Вывести на печать исходную и скорректированную последовательности строк.
Часть 2.3. Файлы.
Организовать программным способом текстовый файл F, где каждая строка содержит несколько натуральных чисел в их символьном представлении. Числа разделяются запятыми или пробелами и определяют вид некоторой геометрической фигуры, ее размеры и положение на экране. Приняты следующие соглашения:
1) для отрезка последовательность состоит из 5 чисел: первое число – 1, четыре остальных задают концы отрезка;
2) для окружности задается четыре числа: первое число – 2, остальные координаты центра и радиус.
Задание 3. Программирование с использованием классов в С++.
Часть 3.1. Композиция.
Разработать и реализовать диаграмму классов для описанных объектов предметной области, используя механизм композиции. Проверить ее на тестовом примере, с демонстрацией всех возможностей разработанных классов на конкретных данных.
Даны:
объект Целое число, умеющий печатать свое значение и отвечать на запрос о значении своего числового поля;
объект Массив целых чисел, не более 20 элементов, умеющий выводить на печать значение своих элементов, возвращать значение любого элемента по его индексу, сумму элементов, минимальное и максимальное значение элементов.
Часть 3.2. Qt. Полиморфное наследование.
Разработать программу, содержащую описание трех графических объектов: отрезок, квадрат, правильный восьмиугольник.
Реализуя механизм полиморфизма, привести объекты в одновременное вращение вокруг их геометрических центров с различными угловыми скоростями/