Лабораторная
На аукционе
На основе одной из готовых обобщенных (шаблонных) объектных коллекций .NET создать класс «Организация», включающий сотрудников. Классы сотрудников должны образовывать иерархию с базовым классом. Сотрудники бывают двух типов: с фиксированной оплатой и почасовики. Описать в базовом классе абстрактный метод для расчета среднемесячной заработной платы. Для почасовиков формула для расчета такова: «среднемесячная заработная плата = 20.8 * 8 * почасовую ставку», для сотрудников с фиксированной оплатой «среднемесячная заработная плата = фиксированной месячной оплате», также к зарплате прибавляется фиксированная премия, размер которой зависит от должности сотрудника. В виде меню программы реализовать нижеприведенный функционал. 1. Упорядочить всю последовательность сотрудников по убыванию среднемесячного заработка. При совпадении зарплаты – упорядочивать данные по алфавиту по ФИО. Вывести идентификатор работника, ФИО, день рождения и среднемесячный заработок для всех элементов списка. 2. Вывести первые 5 имен работников из полученного в пункте 1 списка. 3. Вывести последние 3 идентификатора работников из полученного в пункте 1 списка. 4. В реальном времени (в процессе заполнения списка сотрудников) рассчитывать и поддерживать в актуальном состоянии среднемесячную заработную плату по организации, сохранить значение как поле класса «Организация». 5. Организовать запись и чтение всех данных в/из файла. Реализовать поддержку 2-х форматов файлов: XML и JSON. Использовать либо стандартные средства (форматтеры и сериализаторы), либо собственные. 6. Организовать обработку некорректного формата входного файла.