public static void CreateArr3(int[][] arr) { for (int i = 0; i < arr.Length; i++) { int[] D = new int[i + 1]; Arrs.CreateOneDimAr(D); arr[i] = D; } }
static void Main(string[] args) { Console.WriteLine("First task"); // Одномерные массивы _ = new Arrs(); int[] A = new int[5], //Объявление массивов B = new int[5], //и выделение памяти C = new int[5]; Arrs.CreateOneDimAr(A);//Инициализация Arrs.CreateOneDimAr(B); for (int i = 0; i < C.Length; i++)//Инициализация через сумму A+B { C[i] = A[i] + B[i]; } int[] X = { 5, 5, 6, 6, 7, 7 }; //Явная инициализация int[] U, V; //Отложенная инициализация(Память выделяется позже) U = new int[3] { 1, 2, 3 }; //Выделение памяти и инициализация //V = { 1, 2, 3 }; Память еще не выделена V = new int[3]; V = U;//Ссылка на одну и ту же память V[0] = 9; Arrs.PrintArr1("A", A); Arrs.PrintArr1("B", B); Arrs.PrintArr1("C", C); Arrs.PrintArr1("X", X); Arrs.PrintArr1("U", U); Arrs.PrintArr1("V", V); Console.WriteLine(); Console.WriteLine("Введите Количество элементов массива"); int Size = int.Parse(Console.ReadLine());//Динамический массив, размер массива задается с клавиатуры int[] D = new int[Size]; Arrs.CreateOneDimAr(D); Arrs.PrintArr1("D", D); Console.WriteLine(); Console.WriteLine("Second task"); //Двумерные массивы int[,] arr1 = new int[4, 2]; //Умножение возможно int[,] arr2 = new int[2, 3]; Arrs.CreateArr2(arr1); Arrs.CreateArr2(arr2); int[,] arr3 = Arrs.MultMutr(arr1, arr2); Arrs.PrintArr2("arr1", arr1); Arrs.PrintArr2("arr2", arr2); Arrs.PrintArr2("arr3", arr3); Console.WriteLine(); int[,] arr11 = new int[4, 2];//Умножение невозможно int[,] arr12 = new int[4, 3]; Arrs.CreateArr2(arr11); Arrs.CreateArr2(arr12); int[,] arr13 = Arrs.MultMutr(arr11, arr12); Arrs.PrintArr2("arr1", arr11); Arrs.PrintArr2("arr2", arr12); Arrs.PrintArr2("arr3", arr13); Console.WriteLine(); Console.WriteLine("Third task");//Массивы массивов(Изрезанные массивы или Jagged arrays) int[][] R = new int[10][]; Arrs.CreateArr3(R); Arrs.PrintArr3("arrArr", R); Console.WriteLine(); }