Старое задание 1в

Материал из Вики ИТ мехмата ЮФУ
Перейти к: навигация, поиск

Задание 1в

1.8. Создать сборку, содержащую статический класс MyArray со статическими функциями, реализующими алгоритмы работы с одномерными и двумерными массивами произвольного типа T. Функции должны описываться в виде

static type Name<T>(T[] arr, anotherparams)

Для одномерных массивов:

FillRandom
Print
Insert
Delete
CycleShiftLeft
CycleShiftRight
Concat - конкатенация двух массивов в один
Find - поиск

Для двумерных массивов:

FillRandom
Print
Transpose
DeleteRow
DeleteCol
Find - поиск
Submatrix - вырезание подматрицы

Написать программу, тестирующую все указанные функции.

Замечание 1. Для заполнения случайными числами воспользоваться классом Random.

Замечание 2. Поскольку некоторые функции меняют размеры массива, рекомендуется вторым параметром для массива передавать по ссылке его текущее количество элементов, например:

static void Insert<T>(T[] arr, ref int len, T x)

Замечание 3. Для одномерных массивов доступно на чтение свойство a.Length. Для двумерных массивов для создания и использования:

int [,] a = new int[5,6];
a.GetLength(0);
a.GetLength(1);
a.Rank