Определить максимум в каждом столбце ступенчатого массива - C# (178715)
Формулировка задачи:
Дан ступенчатый массив, состоящий из 3 матриц: 2x2, 3x2, 2x3, заполненных
случайными числами. Определить максимум в каждом столбце и вывести сумму всех
таких максимумов.
Решение задачи: «Определить максимум в каждом столбце ступенчатого массива»
textual
Листинг программы
- class Program
- {
- static Random r = new Random();
- static int[,] input(int[,] a, int n, int m)
- {
- a = new int[n, m];
- for (int i = 0; i < n; i++)
- for (int j = 0; j < m; j++)
- a[i, j] = r.Next(0, 100);
- return a;
- }
- static void output(int[,] a)
- {
- for (int i = 0; i < a.GetLength(0); i++)
- {
- for (int j = 0; j < a.GetLength(1); j++)
- Console.Write(a[i, j] + " ");
- Console.WriteLine();
- }
- Console.WriteLine();
- }
- static int SumOfMax(int[,] a)
- {
- int sum = 0;
- for (int j = 0; j < a.GetLength(1); j++)
- {
- int max = a[0, j];
- for (int i = 1; i < a.GetLength(0); i++)
- max = (a[i, j] > max ? a[i, j] : max);
- sum += max;
- }
- return sum;
- }
- static void Main(string[] args)
- {
- int[][,] mas = new int[3][,];
- Console.WriteLine(mas.Length);
- mas[0] = input(mas[0], 2, 2); mas[1] = input(mas[1], 3, 2); mas[2] = input(mas[2], 2, 3);
- int sum = 0;
- for (int i = 0; i < 3; i++)
- {
- Console.Write($"{i + 1} матрица:\n");
- output(mas[i]);
- sum += SumOfMax(mas[i]);
- }
- Console.WriteLine($"Сумма максимумов столбцов: {sum}");
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д