Алгоритм функционирования системы, решение задачи



МИНОБРНАУКИ РОССИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕВЫСШЕГО ОБРАЗОВАНИЯ "МОСКОВСКИЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ» МИРЭА Институт Информационных Технологий Кафедра Вычислительной Техники (ВТ)  

ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ

по дисциплине

«Объектно-ориентированное программирование»

 

 

Выполнил студент группы ____________________                Фамилия И.О.

(учебная группа)

 

Принял

(должность, звание, ученая степень)  Фамилия И.О.

 

 

Лабораторные работы выполнены       «__»_______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; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!