Определить, является ли заданная целая квадратная матрица 9-го порядка магическим квадратом - C#
Формулировка задачи:
Помогите пожалуйста:
Определить, является ли заданная целая квадратная матрица 9-го порядка магическим квадратом, т.е.такой, в которой суммы элементов во всех строках истолбцах одинаковы.
Решение задачи: «Определить, является ли заданная целая квадратная матрица 9-го порядка магическим квадратом»
textual
Листинг программы
- private static bool Ismagic(int[,] array)
- {
- if (array == null)
- throw new ArgumentNullException();
- if (array.GetLength(0) != array.GetLength(1))
- throw new ArgumentException("Матрица должна быть квадратной");
- int n = array.GetLength(0);
- int? prev = null;
- var indexes = Enumerable.Range(0, n).ToArray();
- for (int i = 0; i < n; i++)
- {
- // Строка
- int rowSum = indexes.Sum(j => array[i, j]);
- // Столбец
- int colSum = indexes.Sum(j => array[j, i]);
- if (rowSum != colSum) return false;
- if (prev == null) prev = rowSum;
- else if (prev != rowSum) return false;
- else prev = rowSum;
- }
- return true;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д