Алгоритм функционирования системы, решение задачи
МИНОБРНАУКИ РОССИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕВЫСШЕГО ОБРАЗОВАНИЯ "МОСКОВСКИЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ» МИРЭА Институт Информационных Технологий Кафедра Вычислительной Техники (ВТ)
ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ
по дисциплине
«Объектно-ориентированное программирование»
Выполнил студент группы ____________________ Фамилия И.О.
(учебная группа)
Принял
(должность, звание, ученая степень) Фамилия И.О.
Лабораторные работы выполнены «__»_______201__ г. (подпись студента)
«Зачтено»
«__»_______201__ г.
(подпись руководителя)
Москва 201__
Содержание
1. Постановка задачи. 3
2. Методы и объекты.. 3
3. Архитектура программы-системы.. 4
3.1. Иерархия объектов. 4
3.2. Взаимодействие объектов. 5
3.3. Алгоритм функционирования системы, решение задачи. 5
4. Схемы.. 7
4.1. Схема иерархии наследования классов. 7
4.2. Схема архитектуры программы. 8
4.3. Схема взаимодействия объектов. 8
4.4. Схема алгоритма решения задачи. 9
5. Код программы.. 9
5.1. Код описания классов. 9
5.1.1. Класс cl_base. 9
5.1.2. Класс cl_application. 11
5.1.3. Класс cl_2. 13
5.1.4. Класс cl_3. 13
5.1.5. Класс cl_p3. 14
5.1.6. Класс cl_4. 14
5.2. Код конструирования системы.. 15
5.3. Код взаимодействия объектов. 15
5.4. Код алгоритма решения задачи. 15
6. Тестирование. 16
|
|
7. Инструкция для пользователя. 16
Постановка задачи
Все сложные электронные, технические средства разного назначения в момент включения выполняют опрос готовности к работе составных элементов, индицируя соответствующую информацию на табло, панели или иным образом.
Построить модель иерархической системы. Реализовать задачу опроса готовности каждого объекта из ее состава и вывести соответствующее сообщение на консоль.
Объект считается готовым к работе:
1. создан и размешен в составе системы согласно схеме архитектуры;
2. имеет свое уникальное наименование;
3. свойство определяющее его готовность к работе имеет значение «истина».
В результате решения задачи опроса готовности объектов, относительно каждого объекта системы на консоль надо вывести информацию:
Если свойство определяющее готовность объекта имеет значение «истина»
Объект «наименование объекта» готов к работе
иначе
Объект «наименование объекта» не готов к работе
Система содержит не менее 10 объектов и не менее одной иерархической ветки вложенности объектов высотой от 3 уровня.
Методы и объекты
Система конструктивно представляет собой иерархию взаимосвязанных объектов. Иерархия объектов системы представляется в виде дерева графа. Для проверки готовности каждого объекта можно использовать рекурсивный алгоритм обхода элементов иерархической структуры.
|
|
Для конструирования системы используем множество объектов с свойствами:
- наименование объекта;
- свойство индикации готовности к работе.
Объекты могут содержать в своем составе другие объекты.
Основной объект (приложение) – это объект,являющийся корневым в дереве иерархии объектов. Иерархия объектов делиться на уровни. Корневой объект принадлежит первому уровню. Остальные объекты принадлежат уровню, номер которого совпадает расстоянием от корневого объекта на иерархическомграфе плюс 1.
Перечень объектов
№ | Объект | Пояснения |
1. | Основной объект (приложение) | Объект является корневым. Содержит 4 объекта второго уровня, 2 объекта третьего уровня и один объект простого третьего уровня Организует построение иерархии объектов. Выполняет проверку готовности объектов к работе. Класс: cl_application |
2. | Объект второго уровня | Определяет готовность к работе объекта. Класс: cl_2 |
3. | Простой объект третьего уровня | Определяет готовность к работе объекта. Класс: cl_p3 |
4. | Объект третьего уровня | Содержит объект четвертого уровня. Определяет готовность к работе объекта. Класс: cl_3 |
5. | Объект четвертого уровня | Определяет готовность к работе объекта. Класс: cl_4 |
|
|
Архитектура программы-системы
Иерархия объектов
Объект | Объекты в составе | Пояснения | Номер |
1 Имя: ob_application | Объект приложение. В иерархии объектов является корневым. | ||
Второго уровня | 2 | ||
Второго уровня | 3 | ||
Второго уровня | 4 | ||
Второго уровня | 5 | ||
Ввода | Создается компилятором. Связан с другими объектами программы интерфейсом «cin» | ||
Вывода | Создается компилятором. Связан с другими объектами программы интерфейсом «cout» | ||
2 Имя: ob_1 | Третьего уровня | 6 | |
6 Имя: ob_2 | Четвертого уровня | 7 | |
7 Имя: ob_4 | |||
3 Имя: ob_3 | Простой, третьего уровня | 8 | |
8 Имя: ob_5 | |||
4 Имя: ob_6 | |||
5 Имя: ob_7 | Третьего уровня | 9 | |
9 Имя: ob_8 | Четвертого уровня | 10 | |
10 Имя: ob_4 |
Взаимодействие объектов
Все интерфейсы между объектами стандартные.
|
|
Алгоритм функционирования системы, решение задачи
Задача: формирование иерархии объектов
Алгоритмреализованвметоде bild_tree_objects ( )
Имя объекта или пункт алгоритма | Предикат | Процедура | Номер перехода |
1 ob_application | Определение наименования ob_1. Определение головного объекта для ob_1. Определение наименования ob_3. Определение головного объекта для ob_3. Создание ob_6 и определение головного объекта. Определение наименования ob_6. Определение наименования ob_7. Определение головного объекта для ob_7. Определение наименования ob_2. Определение головного объекта для ob_2. Определение наименования ob_5. Определение головного объекта для ob_5. Определение наименования ob_8. Определение головного объекта для ob_8. |
Задача: опрос готовности объектов иерархии
Для решения задачи используется рекурсивный алгоритм обхода элементов иерархии.
Алгоритмреализованвметоде show_state_next ( cl_base * ob_parent )
Имя объекта или пункт алгоритма | Предикат | Процедура | Номер перехода |
1 ob_application | Проверка готовности объекта ob_parent. Объект готов к работе | Вывод сообщения на консоль: Объект «наименование объекта» готов к работе | 2 |
Объект не готов к работе | Вывод сообщения на консоль: Объект «наименование объекта» не готов к работе | 2 | |
2 | Если у объекта ob_parent нет подчиненных объектов | Æ | |
Начало цикла по подчиненным объектам объекта ob_parent | 3 | ||
3 | Цикл не завершен | Вызовметода show_state_next ( ссылка на очередной подчиненный объект ) | 3 |
Æ |
Задача: запуск функционирования системы
Алгоритмреализованвметодеexec_app ( )
Имя объекта или пункт алгоритма | Предикат | Процедура | Номер перехода |
1 ob_application | Выполнение задачи опроса готовности объектов по иерархии с исходным аргументом ссылки на объект ob_application | Æ |
Схемы
Дата добавления: 2018-05-02; просмотров: 836; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!