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

UptoLike

94
Основные операции с телефонной книгой заключаются в добавлении
нового абонента, удалении существующего, получении информации о
заданном абоненте и проверке существования заданного абонента. Данные
операции реализованы в виде соответствующих методов.
// метод добавления новой записи об абоненте
public void PushAbonent(string abonent, string phone)
{
// ключ группы соответствует первой букве в имени абонента
// буква задана в верхнем регистре
char key = Char.ToUpper(abonent[0]);
// добавление записи c информацией об абоненте (объект Info)
// в группу с ключом key
book[key].Add(new Info(abonent.ToUpper(), phone));
}
// метод удаления из списка записи по имени абонента
public void DeleteAbonent(string abonent)
{
// ключ группы соответствует первой букве в имени абонента
char key = Char.ToUpper(abonent[0]);
// поиск записи c информацией об абоненте
// и удаление его из списка с ключом key
Info info;
if (FindAbonent(abonent, out info))
book[key].Remove(info);
}
// метод поиска записи по имени абонента
// информация об абоненте возвращается через out-параметр info
public bool FindAbonent(string abonent, out Info info)
{
// ключ группы соответствует первой букве в имени абонента
char key = Char.ToUpper(abonent[0]);
// возвращаем true, если абонент найден в группе key,
// false в противном случае
abonent = abonent.ToUpper();
for (int i = 0; i < book[key].Count; i++)
if (book[key][i].Fio == abonent)
{
info = book[key][i];
return true;
}
info = null;
return false;
}
     Основные операции с телефонной книгой заключаются в добавлении
нового абонента, удалении существующего, получении информации о
заданном абоненте и проверке существования заданного абонента. Данные
операции реализованы в виде соответствующих методов.
  // метод добавления новой записи об абоненте
  public void PushAbonent(string abonent, string phone)
  {
     // ключ группы соответствует первой букве в имени абонента
     // буква задана в верхнем регистре
     char key = Char.ToUpper(abonent[0]);
     // добавление записи c информацией об абоненте (объект Info)
     // в группу с ключом key
     book[key].Add(new Info(abonent.ToUpper(), phone));
  }


  // метод удаления из списка записи по имени абонента
  public void DeleteAbonent(string abonent)
  {
     // ключ группы соответствует первой букве в имени абонента
     char key = Char.ToUpper(abonent[0]);
     // поиск записи c информацией об абоненте
     // и удаление его из списка с ключом key
     Info info;
     if (FindAbonent(abonent, out info))
        book[key].Remove(info);
  }


  // метод поиска записи по имени абонента
  // информация об абоненте возвращается через out-параметр info
  public bool FindAbonent(string abonent, out Info info)
  {
     // ключ группы соответствует первой букве в имени абонента
     char key = Char.ToUpper(abonent[0]);
     // возвращаем true, если абонент найден в группе key,
     // false – в противном случае
     abonent = abonent.ToUpper();
     for (int i = 0; i < book[key].Count; i++)
        if (book[key][i].Fio == abonent)
        {
           info = book[key][i];
           return true;
        }
     info = null;
     return false;
  }




                                                                    94