//Поиск студента private static void FindStudent(IPerson[] person) { Array.Sort(person); var ok = true; while (ok) { var sw = Print.Menu(0, text_Part3_1); switch (sw) { case 1: var student = new Student(); student.Input(); var index = Array.BinarySearch(person, student); try { var tmp = person[index] as Student; Console.Write("Студент: "); tmp.Show(); Console.Write("Номер стеднта в массиве: " + index); } catch { Console.Write("Студент: "); student.Show(); Console.Write("Отсутствует в массиве."); } Console.WriteLine("\n" + text_end); Console.ReadLine(); break; case 2: var associate = new Associate(); associate.Input(); index = Array.BinarySearch(person, associate); try { var tmp = person[index] as Associate; Console.Write("Работник: "); tmp.Show(); Console.Write("Номер работника в массиве: " + index); } catch { Console.Write("Работник: "); associate.Show(); Console.Write("Отсутствует в массиве."); } Console.WriteLine("\n" + text_end); Console.ReadLine(); break; case 3: var teacher = new Teacher(); teacher.Input(); index = Array.BinarySearch(person, teacher); try { var tmp = person[index] as Teacher; Console.Write("Преподаватель: "); tmp.Show(); Console.Write("Номер преподавателя в массиве: " + index); } catch { Console.Write("Преподаватель: "); teacher.Show(); Console.Write("Отсутствует в массиве."); } Console.WriteLine("\n" + text_end); Console.ReadLine(); break; case 4: ok = false; break; } } }