Первое задание.
1. Разработать иерархию классов: Растительный_Продукт, Овощи, Фрукты, Зерновые. Разработать конструкторы и методы работы с каждым классом. В базовом классе сделать конструктор с параметрами. В производных также с параметрами. В производных классах создать по 3 отдельных метода. Разработать два виртуальных метода в базовом классе и их реализации в каждом из производных классов.
2. Сделать класс Растительный_Продукт абстрактным, а реализацию методов перенести в производные классы.
Второе задание.
1. Вложения классов. Модифицировать пример таким образом, чтобы можно было вычислять средний рейтинг по 2 кредита (за семестр).
Порядок выполнения.
В методе StRating () заполнение массива сделать случайными числами от 61 до 100. Сгенерировать 9 цифр для 9 дисциплин.
В классе Student создать 2 экземпляра класса St_Assesment
St_Assesment strating1 = new St_Assesment ();
St_Assesment strating2 = new St_Assesment ();
Определить рейтинги за каждый кредит в методе MyRating () и средний рейтинг за семестр.
2. Создать иерархию классов: Факультет, Преподаватель. Создать класс Кафедра, вложенный в класс Факультет. В классе Факультет создать 2 экземпляра класса Кафедра. В классе Кафедра реализовать 3 метода:
1) Установление названия кафедры
2) Дисциплины кафедры (получение названий дисциплин, закрепленных за кафедрой. Инициализацию названий выполнить в коде класса).
3) Количество преподавателей кафедры.
К примеру:
Факультет Информационных ехнологий.
Кафедры: Программных систем и технологий, 10 преподавателей, 12 нормативных дисциплин.
В методе main реализовать тестирования методов класса.
3. Частичные классы. Разбить класс Кафедра на 2 части.
4. Статические классы. Разработать статический класс с 3 методами (с лаб.4):
1) методом линейного поиска максимальный и минимальный элементы в массиве {4,5,2,3,8,7,6,1}
2) Найти методом двоичного поиска элемент в массиве размера 100.
3) Модифицировать программу двоичного поиска в массиве, используя метод BinarySearch класса Array
В методе main протестировать методы класса.
Третее задание
1. Создайте массив объектов класса Овощи. Реализуйте интерфейс IComparable для сравнения овощей по цене в методе CompareTo ().
2. Реализуйте в классе интерфейс IComparer для сравнения преподавателей по зарплате и по стажу работы.
3. Реализуйте интерфейс IEnumerable. Выведите на консоль список овощей, упорядоченный по цене.
Каждое задание - отдельный проект, в каждом задании интерфейсы и классы в отдельных файлах.
Язык - C#