
Задания 2014 ООП / Домашние задания / ООП_DZ14
.docДомашние задания. Вариант 14
Задание 1. Turbo Delphi
Часть 1.1 Разработать иерархию классов Delphi. Разместить определение классов в отдельном модуле. Класс, позволяющий рисовать линию из точки, определенной нажатием левой клавиши мыши, в точку, определенную отжатием левой клавиши мыши. Класс, позволяющий рисовать эллипс некоторого размера с центром в точке, определенной нажатием левой клавиши мыши.
Вид фигуры и параметры задаются с использованием интерфейсных элементов.
В отчете показать иерархии используемых классов Delphi и разработанных классов, граф состояния пользовательского интерфейса и объектную декомпозицию.
Часть
1.2.
Разработать
программу, содержащую описание трех
графических объектов:
Реализуя
механизм полиморфизма, привести объекты
в одновременное колебательное движение
вокруг указанных точек с разными
амплитудами и периодами колебаний.
Задание 2. С++.
Часть 2.1. Функции.
Даны два упорядоченных по неубыванию значений элементов массива действительных чисел a (количество элементов p ) и d (количество элементов q) . Написать программу, осуществляющую формирование из элементов обоих массивов нового массива f (количество элементов p+q), упорядоченного по тому же закону. Число сравнений при формировании нового массива не должно превышать p+q. При программировании использовать функцию. Вывести на печать исходные и полученный массивы.
Часть 2.2 Текстовая обработка.
Дана последовательность строк. Каждая строка состоит из групп букв, цифр и знаков +,-,*. Группой букв называется группа, которой не предшествует и за которой не следует буква. Группой цифр называется группа, которой не предшествует и за которой не следует цифра. Группой знаков называется группа, которой не предшествует и за которой не следует знак. Написать программу, определяющую в каждой строке самую длинную группу букв. Если таких групп несколько, то первую из них. Заменить эту группу букв последовательностью символов «#######». Вывести на печать исходную и скорректированную последовательность строк.
Часть 2.3. Файлы.
Сформировать программным путем символьный файл F, содержащий слова. Считая, что количество символов в слове не превосходит двадцати определить, сколько в файле F имеется слов, состоящих из двух символов.
Задание 3. Программирование с использованием классов в С++.
Часть 3.1. Композиция.
Разработать и реализовать диаграмму классов для описанных объектов предметной области, используя механизм композиции. Проверить ее на тестовом примере, с демонстрацией всех возможностей разработанных классов на конкретных данных.
Даны: объект целое число, умеющий печатать свое значение и отвечать на запрос о значении своего числового поля.
Объект массив целых чисел, не более 20 элементов, умеющий выводить на печать значение своих элементов, возвращать значение любого элемента по его индексу, сумму элементов, минимальное и максимальное значение элементов.
Часть
3.2. Qt.
Полиморфное наследование.
Разработать программу, содержащую описание трех графических объектов:
Реализуя
механизм полиморфизма, привести объекты
в одновременное колебательное движение
вокруг указанных точек с разными
амплитудами и периодами колебаний.