Определить, является ли заданная целая квадратная матрица 9-го порядка магическим квадратом - C#

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуйста: Определить, является ли заданная целая квадратная матрица 9-го порядка магическим квадратом, т.е.такой, в которой суммы элементов во всех строках истолбцах одинаковы.

Решение задачи: «Определить, является ли заданная целая квадратная матрица 9-го порядка магическим квадратом»

textual
Листинг программы
  1.         private static bool Ismagic(int[,] array)
  2.         {
  3.             if (array == null)
  4.                 throw new ArgumentNullException();
  5.  
  6.             if (array.GetLength(0) != array.GetLength(1))
  7.                 throw new ArgumentException("Матрица должна быть квадратной");
  8.  
  9.  
  10.             int n = array.GetLength(0);
  11.             int? prev = null;
  12.  
  13.             var indexes = Enumerable.Range(0, n).ToArray();
  14.             for (int i = 0; i < n; i++)
  15.             {
  16.                 // Строка
  17.                 int rowSum = indexes.Sum(j => array[i, j]);
  18.                 // Столбец
  19.                 int colSum = indexes.Sum(j => array[j, i]);
  20.                
  21.                 if (rowSum != colSum) return false;
  22.  
  23.                 if (prev == null) prev = rowSum;
  24.                 else if (prev != rowSum) return false;
  25.                 else prev = rowSum;
  26.             }
  27.  
  28.             return true;
  29.         }

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


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

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

11   голосов , оценка 3.909 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы