Найти сумму элементов каждой диагонали матрицы, параллельной побочной - C#
Формулировка задачи:
Дана квадратная матрица A порядка M=6. Найти сумму элементов каждой ее диагонали, параллельной побочной (начиная с одно элементной диагонали A0,0).
Решение задачи: «Найти сумму элементов каждой диагонали матрицы, параллельной побочной»
textual
Листинг программы
- static void diagon(int n, int[,] matr, int[] diag)
- {
- for (int i = 0; i < n; i++)
- {
- int s = 0;
- for (int j = 0; j < i + 1; j++)
- {
- int i1 = n - 1 - i + j;
- s += matr[i1, j];
- }
- diag[i] = s;
- }
- for (int i = n; i < 2*n-1; i++)
- {
- int s = 0;
- int i1 = i - n;
- for (int j = 0; j < n-i1-1; j++)
- {
- int i2 = j + i1 +1;
- s += matr[j, i2];
- }
- diag[i] = s;
- }
- }
- static void Main(string[] args)
- {
- int N = 6;
- int[,] matrix = new int[N, N];
- int[] diag = new int[2*N- 1];
- Random rnd = new Random();
- Console.WriteLine("Матрица");
- for (int i = 0; i < N; i++)
- {
- for (int t = 0; t < N; t++)
- {
- matrix[i, t] = rnd.Next(0, 10);
- Console.Write(matrix[i, t] + "\t");
- }
- Console.WriteLine();
- }
- Console.WriteLine();
- diagon(N, matrix, diag);
- for (int i = 0; i < 2 * N - 1; i++)
- Console.WriteLine("Номер диагонали = {0}, Сумма элементов = {1}", i + 1, diag[i]);
- Console.ReadKey();
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д