Практикум по курсу "Объектно-ориентированное программирование" на языке C#. Андрианова А.А - 96 стр.

UptoLike

95
// метод проверки наличия в хэш-таблице
// заданного имени абонента
public bool HasAbonent(string abonent)
{
Info info;
return FindAbonent(abonent, out info);
}
Все методы, реализующие операции с записью хэш-таблицы,
начинаются с вычисления хэш-функции, т.е. ключа группы, который
соответствует этой записи. Далее в этой группе производится требуемая
операция.
Печать телефонной книги осуществляется с помощью операции
получения строкового представления списка записей книги:
static public implicit operator string(PhoneBook ob)
{
string res = "Телефонная книга\n\n";
// перебор всех ключей телефонной книги
foreach (char c in ob.book.Keys)
// если в группе, соответствующей ключу, есть записи,
// выводим их в строку-результат
if (ob.book[c].Count != 0)
{
// печать буквы-ключа
res = res + c + ":\n\n";
// печать всех записей из списка группы
for (int i = 0; i < ob.book[c].Count; i++)
res = res + "\t" + ob.book[c][i]+"\n";
res = res + "\n\n";
}
return res;
}
Приведем далее функцию Main() приложения, которое формирует и
использует телефонную книгу. Приложение выводит меню с операциями,
которые можно выполнять с телефонной книгой, и осуществляет выбранную
операцию. Для окончания работы приложения в меню содержится команда
"Exit".
static int Menu()
{
int k = 0;
while (k <= 0 || k > 6)
{
Console.WriteLine("----------- Меню ------------");
Console.WriteLine("Добавить абонента - 1,\n
      // метод проверки наличия в хэш-таблице
      // заданного имени абонента
      public bool HasAbonent(string abonent)
      {
         Info info;
         return FindAbonent(abonent, out info);
      }

     Все методы, реализующие операции с записью хэш-таблицы,
начинаются с вычисления хэш-функции, т.е. ключа группы, который
соответствует этой записи. Далее в этой группе производится требуемая
операция.
     Печать телефонной книги осуществляется с помощью операции
получения строкового представления списка записей книги:

     static public implicit operator string(PhoneBook ob)
     {
        string res = "Телефонная книга\n\n";
        // перебор всех ключей телефонной книги
         foreach (char c in ob.book.Keys)
            // если в группе, соответствующей ключу, есть записи,
            // выводим их в строку-результат
            if (ob.book[c].Count != 0)
            {
               // печать буквы-ключа
               res = res + c + ":\n\n";
                // печать всех записей из списка группы
               for (int i = 0; i < ob.book[c].Count; i++)
                  res = res + "\t" + ob.book[c][i]+"\n";
               res = res + "\n\n";
            }
        return res;
     }

    Приведем далее функцию Main() приложения, которое формирует и
использует телефонную книгу. Приложение выводит меню с операциями,
которые можно выполнять с телефонной книгой, и осуществляет выбранную
операцию. Для окончания работы приложения в меню содержится команда
"Exit".

      static int Menu()
      {
         int k = 0;
         while (k <= 0 || k > 6)
         {
            Console.WriteLine("----------- Меню ------------");
            Console.WriteLine("Добавить абонента - 1,\n

95