Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПМ 01. 09.02.04 МУ ПЗ и СР-МДК 01.02 Методы и средства приектирования ИС (Олюнина) ИС-12.docx
Скачиваний:
131
Добавлен:
21.03.2016
Размер:
1.14 Mб
Скачать

2. Постановка задачи

Сформировать однонаправленный список, тип информационного поля указан в варианте.

Распечатать полученный список. Выполнить обработку списка в соответствии с заданием. Распечатать полученный список. Удалить список из памяти. Сформировать двунаправленный список, тип информационного поля указан в варианте. Распечатать полученный список. Выполнить обработку списка в соответствии с заданием. Распечатать полученный список. Удалить список из памяти. Сформировать идеально сбалансированное бинарное дерево, тип информационного поля указан в варианте. Распечатать полученное дерево. Выполнить обработку дерева в соответствии с заданием, вывести полученный результат. Преобразовать идеально сбалансированное дерево в дерево поиска. Распечатать полученное дерево.

3. Варианты

№ варианта

Однонаправленный 

Двунаправленный

Бинарное дерево

1

Тип информационного поля int. Удалить из списка все элементы с четными информационными полями.

Тип информационного поля char*. Добавить в список элемент с заданным номером.

Тип информационного поля char. Найти количество элементов с заданным ключом.

2

Тип информационного поля double. Удалить из списка все элементы с четными номерами (2, 4, 6 и. т. д.).

Тип информационного поля char*. Добавить в список элементы с номерами 1, 3, 5 и т. д.

Тип информационного поля int. Найти максимальный элемент в дереве.

3

Тип информационного поля int. Удалить из списка первый элемент с четным информационным полем.

Тип информационного поля double. Добавить в список элемент после элемента с заданным информационным полем.

Тип информационного поля char*. Найти количество листьев в дереве.

4

Тип информационного поля int. Удалить из списка последний элемент с четным информационным полем.

Тип информационного поля char*. Добавить в список элемент с заданным номером.

Тип информационного поля double. Найти минимальный элемент в дереве.

5

Тип информационного поля char*. Добавить в список элемент после элемента с заданным информационным полем.

Тип информационного поля int. Удалить из списка все элементы с четными информационными полями.

Тип информационного поля char. Найти высоту дерева.

6

Тип информационного поля char*. Добавить в список элемент с заданным номером.

Тип информационного поля double. Удалить из списка все элементы с четными номерами (2, 4, 6 и. т. д.).

Тип информационного поля int. Найти среднее арифметическое элементов дерева.

7

Тип информационного поля double. Добавить в список после каждого элемента с отрицательным информационным полем элемент с информационным полем равным 0.

Тип информационного поля int. Удалить из списка первый элемент с четным информационным полем.

Тип информационного поля char*. Найти количество элементов дерева, начинающихся с заданного символа.

8

Тип информационного поля char*. Добавить в список элементы с номерами 1, 3, 5 и т. д.

Тип информационного поля int. Удалить из списка последний элемент с четным информационным полем.

Тип информационного поля char. Найти количество элементов с заданным ключом.

9

Тип информационного поля int. Удалить из списка все элементы с четными информационными полями.

Тип информационного поля char*. Добавить в список элементы с номерами 1, 3, 5 и т. д.

Тип информационного поля double. Найти максимальный элемент в дереве.

10

Тип информационного поля double. Удалить из списка все элементы с четными номерами (2, 4, 6 и. т. д.).

Тип информационного поля char*. Добавить в список элемент после элемента с заданным информационным полем.

Тип информационного поля int Найти количество листьев в дереве.

11

Тип информационного поля int. Удалить из списка первый элемент с четным информационным полем.

Тип информационного поля char*. Добавить в список элемент с заданным номером.

Тип информационного поля double. Найти минимальный элемент в дереве.

12

Тип информационного поля int. Удалить из списка последний элемент с четным информационным полем.

Тип информационного поля char*. Добавить в список элемент с заданным номером.

Тип информационного поля char. Найти высоту дерева.

13

Тип информационного поля char*. Добавить в список элемент после элемента с заданным информационным полем.

Тип информационного поля double. Удалить из списка все элементы с отрицательными информационными полями.

Тип информационного поля int. Найти среднее арифметическое элементов дерева.

14

Тип информационного поля char*. Добавить в список элемент с заданным номером.

Тип информационного поля int. Удалить из списка последний элемент с четным информационным полем.

Тип информационного поля char. Найти количество элементов с заданным ключом.

15

Тип информационного поля double. Добавить в список после каждого элемента с отрицательным информационным полем элемент с информационным полем равным 0.

Тип информационного поля int. Удалить из списка все элементы с четными номерами (2, 4, 6 и. т. д.).

Тип информационного поля char*. Найти количество элементов дерева, начинающихся с заданного символа

4. Методические указания Описания структур для формирования списков/деревьев, а также функции для их обработки сохранить в библиотечном файле с расширением .h (например, point.h). Функцию main() сохранить в файле с расширением .cpp. Библиотечный файл подключить с помощью директивы #include “имя_файла.h”. Для выделения памяти под информационные поля типа char* использовать операцию new, для удаления из памяти – операцию delete. Для формирования элементов списков/дерева написать отдельные функции. Для формирования списков/дерева, удаления добавления элементов, поиска заданных элементов написать отдельные функции.  В функции main() должны быть размещены только описания переменных и обращения к соответствующим функциям. Если в списке/дереве отсутствуют элементы, соответствующие критерию поиска (например, при удалении элемента с номером k, k больше, чем количество элементов в списке), должно быть выведено сообщение о том, что требуемые элементы не найдены.  Интерфейс реализовать с помощью текстового меню.

^