Вывод иерархического дерева объектов на консоль



 

Внутренняя архитектура (вид иерархического дерева объектов) в большинстве реализованных программах динамически меняется в процессе отработки алгоритма. Вывод текущего дерева объектов является важной задачей, существенно помогая разработчику, особенно на этапе тестирования и отладки программы.

Построить модель иерархической системы. Реализовать задачу вывода на консоль иерархического дерева в следующем виде:

root

ob_1

   ob_2

ob_3

   ob_4

       ob_5

   ob_6

       ob_7

 

где: root - наименование корневого объекта (приложения).

 

Система должна содержать не менее 10 объектов и не менее одной иерархической ветки вложенности объектов высотой от 3 уровня. 

Архитектура системы строиться по усмотрению разработчика.

 

Доступ из текущего объеета к любому объекту системы

 

Иметь возможность доступа к любому объекту системы, «мечта» любого разработчика программы.

Построить модель иерархической системы. Реализовать метод получения ссылки на любой объект в составе дерева иерархии объектов. В качестве параметра методу передать путь объекта от корневого. Путь задать в следующем виде: 

/root/ob_1/ob_2/ob_3

 

Реализовать задачу вывода перечня наименований объектов на консоль. Алгоритм реализовать в методе одного из объектов. Выводимый перечень должен содержать наименования объектов из разных веток иерархического дерева и разного уровня принадлежности. Примерный ответ должен иметь следующий вид:

Object name: ob_2

Object name: ob_3

Object name: ob_7

 

Система должна содержать не менее 10 объектов, не менее трех веток и не менее одной иерархической ветки вложенности объектов высотой от 3 уровня. Архитектура системы строиться по усмотрению разработчика.

 

 

Ввод, обработка и вывод данных

 

Построить модель иерархической системы. На разных ветвях иерархии и на разных уровнях определить три объекта:

1. Для ввода данных (ob_1).

2. Для обработки данных (ob_2).

3. Для вывода данных (ob_3).

Классы этих объектов должны быть разными.

Система должна содержать не менее 10 объектов, не менее трех веток и не менее одной иерархической ветки вложенности объектов высотой от 3 уровня. Архитектура системы строиться по усмотрению разработчика.

Реализовать метод получения ссылки на объект с уникальным именем в составе дерева иерархии объектов. В качестве параметра методу передать: 

//имя объекта

Например

//ob_4

 

Входные данные: последовательность целых чисел. Ввод завершается после ввода нулевого значения.

Выходные данные:

1) исходная последовательность целых чисел;

2) результат обработки.

Примерные алгоритмы обработки последовательности целых чисел:

1) упорядочение по возрастанию;

2) упорядочение по убыванию;

3) инверсия исходной последовательности целых чисел;

4) первоначально упорядочение по возрастанию четных далее по убыванию нечетных чисел последовательности;

5) поиск максимального значения.

 

Реализовать алгоритм ввода, обработки и вывода результатов посредством последовательного взаимодействия объектов:

root ® ob_1 ® ob_2 ® ob_3

 

 

Сигналы и обработчики

 

Построить модель иерархической системы. Реализовать объект приложение и не менее трех объектов разных классов. Построить интерфейсы (связи) следующих конфигурации:

 

1. Сигнал ® обработчик.

2. Сигнал ® обработчик 1.

                   обработчик 2.

3. Сигнал ® обработчик 1 ® сигнал ® обработчик 2.

4. Сигнал ® обработчик 1® сигнал ® обработчик 2.

                                                                обработчик 3.

 

В методе объекта приложения организовать ввод текстовой информации в цикле по следующей структуре:

«номер интерфейса» «текст»

Согласно «номер интерфейса» отработать соответствующую последовательность вызовов сигналов и обработчиков, передав совместно с сигналом введенный текст.

Обработчики должны выводить на консоль информацию:

«имя объекта обработчика» : «текст переданный с сигналом»

Завершить работу программы при вводе «номер интерфейса» равным 0.

 


Дата добавления: 2019-01-14; просмотров: 1066; Мы поможем в написании вашей работы!

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






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