Определитель матрицы путем произведения элементов - C#
Формулировка задачи:
Найти определитель как суму всех возможных произведений элементов матрицы при условии, что в произведение будет взято только по одному элементу с каждого столбца и строчки. Если короче, то найти детерминант по его соновному определению. Нужна помощь в составлении этого метода, который будтет считать эту суму прозведений (половина со знаком плюс - половина минус, в зависимости от парности перестановок номеров). Буду благодарен за любую помощь
Решение задачи: «Определитель матрицы путем произведения элементов»
textual
Листинг программы
using System;
using System.Collections.Generic;
using Matrices;
namespace ConsoleApplication1 {
class Program {
static void Main(string[] args) {
double[,] m = new double[5, 5];
FillMatrix(m);
PrintMatrix(m);
double det = Matrix.GetDeterminant(m);
Console.WriteLine("Определитель равен {0}.", det);
Console.Read();
}
/// <summary>
/// Заполнение матрицы случайными числами
/// </summary>
static void FillMatrix(double[,] m) {
int n = m.Length;
Random rnd = new Random(DateTime.Now.Millisecond);
for (int i = 0; i < m.GetLength(0); i++) {
for (int j = 0; j < m.GetLength(1); j++) {
m[i, j] = rnd.Next(n);
}
}
}
/// <summary>
/// Вывод матрицы на экран.
/// </summary>
static void PrintMatrix(double[,] m) {
for (int i = 0; i < m.GetLength(0); i++) {
for (int j = 0; j < m.GetLength(1); j++)
Console.Write("{0,-4}", m[i, j]);
Console.WriteLine();
}
}
}
}