Посчитать сумму периметра двумерного массива? - 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];

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.6 из 5
Похожие ответы