ння на курсову роботу, то уявімо псевдокод функції, що відповідає за його виконання.
Назвемо її relize.
Функція relize
Дано: цілі змінні k, m і n - кількість елементів першого, другого і третього списку відповідно; покажчики на початок і кінець кожного зі списків; i, j, z - лічильники циклів.
Вводимо k, m і n.
i=0
Поки (i менше k)
{
Додати елемент в перший список і збільшити i на одиницю
}
j=0
Поки (j менше m)
{
Додати елемент у другий список і збільшити j на одиницю
}
z=0
Поки (z менше n)
{
Додати елемент в третій список і збільшити z на одиницю
}
Поки (не скінчиться перший список)
{
Якщо (поточний елемент знайдеться в другому і в третьому списку одночасно)
Тоді (виводимо його на екран і ставимо пробіл)
Переходимо до наступного елементу
}
. СКЛАДАННЯ ПРОГРАМНОГО КОДУ
Тепер, коли у нас є необхідні алгоритми для вирішення поставлених завдань, можна приступати до складання програмного коду. Почнемо з представлення елементів списку. Кожен елемент являє собою структуру з ім'ям Node, що містить символьну змінну і два покажчика - на попередній і на наступний елемент - типу Node з іменами prev і next відповідно.
Node
{d; * next; * prev;
};
Перейдемо до кодування функцій. Виходячи з розроблених алгоритмів, всі функції, за винятком пошуку і виведення на екран, будуть одержувати в якості параметрів посилання на покажчики початку і кінця списку, щоб після роботи функції ми мали можливість працювати з зміненою послідовністю. Для введення і виведення у всіх функціях будемо використовувати оператори cin і cout з бібліотеки iostream.h.
Додавання елемента.
Функція не повертатиме ніякого значення, тому типом значення, що повертається встановимо void. Прототип функції буде мати наступний вигляд:
add (Node * & pbeg, Node * & pend)
У тілі функції потрібно організувати введення елемента, виділення пам'яті під нього, запис додається значення в поле даних структури та корретіровку покажчиків. Крім того, потрібно передбачити можливість додавання першого елемента в список. Код функції додавання, реалізованої в моїй програмі представлений нижче.
d; << «Введіть елемент:»; >> d; * pv=new Node;// Виділення пам'яті під новий елемент> d=d; (pbeg == NULL) / / Якщо покажчик голови порожній, встановлюємо
/ / його на новий елемент
{= pv;=pv;> next=0;> prev=NULL;
}
{> next=0;> prev=pend;> next=pv;=pv;}
Пошук елемента по ключу.
Функція повертатиме покаж...