Лабораторная работа 9 «Однонаправленные списки» Задание. Решить задачу, выполняя следующие требования: 1. Оформить в виде отдельных процедур операции над списками: 1) формирование списка из файла; 2) обработка списка 3) вывод списка; 2. В спецификации отразить структуру списка. 1. Удалить из однонаправленного списка m элементов, начиная с n-го элемента. 2. Образовать два списка из элементов массива A1,…,AN. В один список включить элементы, для которых удовлетворяется условие Ai = (Ai-1+Ai+1)/2, в другой список – все остальные. 3. Элемент однонаправленного списка включает фамилию студента и его экзаменационные оценки. Сформировать массив из фамилий студентов, успешно сдавших сессию. 4. Из списка, элементы которого содержат упорядоченные целые числа, сформировать однонаправленный список, исключив повторное вхождение одного и того же числа. 5. Задан список предприятий, расположенных в порядке убывания стоимости продукции. Пополнить из файла этот список, не нарушая упорядоченности списка. 6. Из однонаправленного списка, упорядоченного по возрастанию ключа Z, исключить элементы, для которых A < Z < B. 7. Из однонаправленного списка исключить последние m элементов. Оформить в виде процедуры. 8. Из двумерного массива А(m,6) сформировать однонаправленный список, i-й элемент которого содержит все элементы i-й строки матрицы А. 9. После элемента списка Р1 с ключом Х, равным заданному А, вставить список Р2. 10. Список заявок на установку телефонов содержит номер заявки и адрес абонента. Выдать номера телефонов из массива N1,…,Nk k абонентам, выделив их в отдельный список. 11. Разделить однонаправленный список целых чисел на однонаправленные списки четных и нечетных чисел, изменяя только указатели. 12. Составить процедуру, которая определяет массив номеров однонаправленного списка, элементы которого содержат величины value1 и value2, удовлетворяющие условиям value1=Q, value2=P. 13. Составить процедуру формирования массива из номеров элементов списка со значениями признаков Р1 >Р2 и определения количества таких элементов 14. Элемент однонаправленного списка включает ФИО студента и его экзаменационные оценки. Сформировать новый список из ФИО студентов, сдавших успешно все экзамены. 15. Сдается новый дом с n однокомнатными и m двухкомнатными квартирами. Элемент списка содержит ФИО очередников и требуемое количество комнат. Напечатать ФИО очередников, получивших квартиру и исключить их из списка. 16. Добавить в начало однонаправленного списка m новых элементов из массива. 17. Из двунаправленного списка, элементы которого имеют поле V, удалить все элементы, для которых удовлетворяется условие: C < V < D. 18. В однонаправленном списке поменять местами первые и последние n элементов списка. 19. Элементами однонаправленного списка являются слова переменной длины, не превышающие 10 символов. Подсчитать, сколько в списке слов, состоящих из двух, трех, и т.д. символов. 20. Из однонаправленного списка сформировать двунаправленный. 21. Из однонаправленного списка создать двунаправленный список, включив в каждый элемент номер этого элемента. 22. Однонаправленный список упорядочить по возрастанию ключа Р. 23. Задано два однонаправленных списка, упорядоченных по ключу B. Произвести слияния этих списков в один, сохранив упорядоченность элементов по ключу В. 24. Элементы однонаправленного списка содержат слова, не превышающие 20 символов. Концом слова является пробел. В каждый элемент добавить информацию о длине слова.