< endl <<< / p>
«<3>- Кінець операції »<< endl; p; ??>> p; (p <1 | | p> 3) throw (char *)« Помилка введення, спробуйте заново »; (p == 1) / / вставка елемента в кінець списку
{
{(countelem == 20) throw (char *) «Список повний, виберіть іншу операцію»; * pf=new faculty;
/ / створення двусвязного списку <<" Введіть код факультету:»; >> pf-> code; <<" Введіть назву факультету:»;> > pf-> name; <<" Введіть ПІБ декана:»; >> pf-> fio; <<" Введіть кількість кафедр:»; >> pf-> numkaf; <<" Введіть викладачів:»; >> pf-> teacher; << endl; (phead == 0) / / вставка якщо перший елемент
{> next=NULL;> pred=NULL;
phead=pf;// Голова вказує на створений елемент=pf;// Хвіст
} / / якщо не перший
{> next=pf;> next=NULL;> pred=last;=pf;
} + +;
} (char * str) / / повідомлення і кінець операції якщо список сповнений
{<< str << endl << endl;;
}
} if (p == 2) / / вставка елемента по ключу
{
{(countelem == 20) throw (char *) «Список повний, виберіть іншу операцію»; * temp=phead;// Створення тимчасового елемента
faculty * pf=new faculty; <<" Введіть код факультету:»;
cin >> pf-> code; <<" Введіть назву факультету:»; >> pf-> name; <<" Введіть ПІБ декана : »; >> pf-> fio; <<" Введіть кількість кафедр: »; >> pf-> numkaf; <<" Введіть викладачів: »;
cin >> pf-> teacher; << endl; (phead == NULL) / / якщо перший
{<< «Список порожній, елемент буде першим» << endl << endl;> next=NULL;> pred=NULL;
phead=pf;// Голова вказує на створений елемент=pf;// Хвіст + +;
} / / якщо не перший
{
{<<" Введіть ключ елемента, після якого вставити:»; l; >> l; (temp!=0) / / перевірка позиції елемента
{(temp-> code == l) break;=temp-> next;
} (temp == NULL) throw (char *) «Елементу з таким ключем немає, спробуйте інший»; if (temp-> code == last-> code) / / якщо елемент останній
{> next=0;> pred=last,> next=pf;=pf;
} / / якщо елемент у будь-якій позиції
{> next=temp-> next;> next-> pred=pf;> next=pf;> pred=temp;
} + +;
} (char * str) / / повідомлення і рестарт операції якщо помилка введення
{<< endl; << str << endl << endl;
}
}
} (char * str) / / повідомлення і кінець операції якщо список сповнений
{<< str << endl << endl;;
}
} if (p == 3) return;// Кінець операції
} (char * str) / / повідомлення і рестарт операції якщо не правильний вибір
{<< str << endl << endl;
}
}
} insert2 () / / вставка елемента з файлу в список
{* temp=phead; (true) / / цикл для вибору операції вставки елемента
{