Проект полягає у створенні програми «Телефонна книга» на основі динамічної структури
дані - двонаправлений список. У остаточній версії двосторонній список буде базою даних контактів,
редагований вміст, доступний для пошуку та сортування. Проект розрахований на 3 класи, синьою лінією позначені завдання, які необхідно виконати, пов’язані з актуальною темою лабораторії.
Проект: Двонаправлений список
Напишіть програму, яка містить:
1. Основна реалізація двонаправленого списку:
а. Структура - елемент списку, що містить дані (спочатку у вигляді int) і адреси до
однотипні структури - попередній і наступний елемент;
б. Функція додавання елементів у кінець списку.
c. Функція, яка відображає список на консолі.
г. Функція, яка очищає список (звільняє пам'ять).
2. Структура контакту - ім'я, прізвище, номер, група (група, наприклад, сім'я, робота, друзі ...);
3. Функція зчитує контакти з файлу .CSV і додає їх до списку (змінити тип даних у структурі
елемент списку контактів).
4. Функція сортування списку за іменем, прізвищем або групою;
5. Функція, яка додає контакт до списку в місці в залежності від методу сортування (наприклад, якщо сортувати за прізвищем, новий контакт також потрібно розмістити у відповідному місці). Увага! Йдеться про розміщення елемента в певному місці в списку, а НЕ для вирішення
за стилем - додати в кінці і відсортувати ще раз.
6. Функція пошуку контактів за ім'ям та прізвищем на основі відповідних рядків
символів (наприклад, пошук за допомогою ma знайде контакт, який містить Марціна, а також Томаша
або Маєвського);
7. За вищевказаним принципом - функція пошуку контактів, що належать до однієї групи;
8. Функції видалення вибраного контакту зі списку;