Посчитать сумму периметра двумерного массива? - C#
Формулировка задачи:
пытаюсь посчитать сумму двумерного массива , решить задачу смог, но хотелось бы получить совет сообщества.
какой будет более правильный и красивый алгоритм из приведенных изображений которые приложил, а так же рад буду получить и другой предложенный алгоритм.
первое изображение это мое решение , а для двух других я еще не решил , что-то не получается написать сам код.
если кого не затруднит помочь во втором и третьем решении, как показано на изображении sum2, sum3?
спасибо .
* matsum.png - это мое решение, и мне кажется что есть еще лучше.
static int PrintAround(int[,] m) { int sum = 0; for (int i = 0; i < m.GetLength(0); i++) { for (int j = 0; j < m.GetLength(1); j++) { if (i == 0 || j == 0) { sum += m[i, j]; } else { sum = sum + m[i, m.GetLength(0) - 1] + m[m.GetLength(1) - 1, j]; if (i == 4 && j == 4) sum = sum - m[i, j]; i++; } } } return sum; }
Решение задачи: «Посчитать сумму периметра двумерного массива?»
textual
Листинг программы
int height = mas.Length - 1; int width = mas[0].Length - 1; int summa = 0; for (int i = 0; i <= height; i++) summa += i == 0 || i == height ? mas[i].Sum() : mas[i][0] + mas[i][width];
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д