- •Лабораторная работа №4. Работа с массивами в c# Задание 1. Класс Array
- •Задание 2. Массивы как коллекции. Статические методы класса Array.
- •Задание 3. Класс Object и массивы
- •Задание 4. Массивы Объектов.
- •Задание 5. Приведение типов массивов.
- •Задание 6. Описание класса массива
- •Контрольные вопросы
- •Выполнение лабораторной работы
- •Дополнительные баллы начисляются в сумму выполненной работы, но только в случае своевременного выполнения!!!
Задание 6. Описание класса массива
Описать класс для работы с одномерным массивом целых чисел (вектором). Обеспечить следующие возможности:
задание произвольных целых границ индексов при создании объекта;
обращение к отдельному элементу массива с контролем выхода за пределы массива;
выполнение операций поэлементного сложения и вычитания массивов с одинаковыми границами индексов;
выполнение операций умножения и деления всех элементов массива на скаляр;
вывода на экран элемента массива по заданному индексу и всего массива.
Написать программу, демонстрирующую все разработанные элементы класса.
Контрольные вопросы
Какие классы наследуют класс Array? Что дает такое наследование?
Перечислите основные интерфейсы реализованные в Array;
Можно ли модифицировать значения элемента массива когда он передан как Array&?
Можно ли модифицировать значения элемента массива, когда работа с ним осуществляется как с коллекцией элементов посредством цикла foreach?
Перечислите параметры метода SetValue класса Array;
Можно ли массивы приводить к классу Obect? А обратно?
На что в задании 4 повлияет выбор между статическим и динамическим полем rnd?
Когда происходит инициализация объектов массива. Какие пути решения проблемы инициализации можете предложить?
Сформулируйте правила преобразования ссылок на массивы.
Укажите возможны ли следующие преобразования:
int[] в object[];
string[] в object[];
object[] в sting[];
Выполнение лабораторной работы
Лабораторная работа выполняется в аудитории вместе с преподавателем;
Время выполнения лабораторной работы 80 минут;
Отметка о выполнении должна быть поставлена на занятии. Защищать лабораторную работу и отвечать на вопросы можно на следующем занятии;
Если лабораторная работа выполнена в срок (даже если не защищена), то максимальное количество баллов – 30, в случае не выполнения лабораторной работы на занятии (в т.ч. и в срок) максимальное количество баллов – 24;
Дополнительные баллы начисляются в сумму выполненной работы, но только в случае своевременного выполнения!!!