Лабораторная 10. Двусвязные списки.
- Протестировать разработанный на лекциях модуль управления двусвязными списками
(шаблон модуля), обнаружить и исправить ошибки. Для тестирования
следует разработать программу, которая последовательно проверит работоспособность
каждой функции (процедуры) модуля с прохождением по всем ветвям алгоритма и оценкой корректности
полученных результатов (например,
функция DeleteElement должна быть проверена на работоспособность в ситуациях, когда удаляемый элемент
равен nil, является первым или последним элементом, ни первым и ни последним элементом. Во всех случаях
следует также проверить корректность возвращаемого результата функции).
Решить
следующие задачи, используя функции обновленного модуля.
- Заполнить со стандартного потока ввода двусвязный список числовых значений. Заполнение завершить,
когда будет введено нечисловое значение. Используя функцию listAction, вывести список в прямом и обратном порядке.
- Заполнить со стандартного потока ввода двусвязный список числовых значений. Заполнение завершить,
когда будет введено нечисловое значение. Вывести полученный список.
Перенести каждый второй элемент исходного списка в новый список с помощью функций удаления и добавления элементов.
Вывести оба полученных списка.
При решении задач запрещается изменять ключевые значения элементов списка по окончании процесса заполнения.