计算下列行列式行列式

C#使用加边法计算行列式的值
作者:北风其凉
字体:[ ] 类型:转载 时间:
这篇文章主要介绍了C#使用加边法计算行列式的值,实例分析了C#加边法计算行列式的原理与实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了C#使用加边法计算行列式的值。分享给大家供大家参考。具体如下:
行列式的值等于其第一行各元素乘以各自对应的代数余子式之积的和。
(注:本代码仅提供一种思路,并不代表最优解)
/// &summary&
/// 递归计算行列式的值
/// &/summary&
/// &param name="matrix"&矩阵&/param&
/// &returns&&/returns&
public static double Determinant(double[][] matrix)
//二阶及以下行列式直接计算
if (matrix.Length == 0) return 0;
else if (matrix.Length == 1) return matrix[0][0];
else if (matrix.Length == 2)
return matrix[0][0] * matrix[1][1] - matrix[0][1] * matrix[1][0];
//对第一行使用“加边法”递归计算行列式的值
double dSum = 0, dSign = 1;
for (int i = 0; i & matrix.L i++)
double[][] matrixTemp = new double[matrix.Length - 1][];
for (int count = 0; count & matrix.Length - 1; count++)
matrixTemp[count] = new double[matrix.Length - 1];
for (int j = 0; j & matrixTemp.L j++)
for (int k = 0; k & matrixTemp.L k++)
matrixTemp[j][k] = matrix[j + 1][k &= i ? k + 1 : k];
dSum += (matrix[0][i] * dSign * Determinant(matrixTemp));
dSign = dSign * -1;
2.Main函数调用
static void Main(string[] args)
//二阶行列式 -2
double[][] matrix1 = new double[][]
new double[] { 1, 2 },
new double[] { 3, 4 }
Console.WriteLine(Determinant(matrix1));
//三阶行列式 -4
double[][] matrix2 = new double[][]
new double[] { 2, 0, 1 },
new double[] { 1, -4, -1 },
new double[] { -1, 8, 3 }
Console.WriteLine(Determinant(matrix2));
//四阶行列式 -21
double[][] matrix3 = new double[][]
new double[] { 1, 2, 0, 1 },
new double[] { 1, 3, 5, 0 },
new double[] { 0, 1, 5, 6 },
new double[] { 1, 2, 3, 4 }
Console.WriteLine(Determinant(matrix3));
Console.ReadLine();
3.运行结果
希望本文所述对大家的C#程序设计有所帮助。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具用行列式性质计算行列式的值_百度知道
用行列式性质计算行列式的值
1不知道用行列式哪一个性质比较简单线性代数浙大三版第二章习题第三题第四小题
提问者采纳
再将其积加于另一行(列)的相应元素:以同一常数乘任意一行(列)上的所有元素利用下列性质比较简单://e.hiphotos.baidu.baidu.jpg" esrc="http://e.baidu://e.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><img class="ikqb_img" src="http。<a href="/zhidao/pic/item/a6efce1b9d16fdfafbb4c897b48f8c5495ee7bea.hiphotos,这个行列式的值不变.com/zhidao/wh%3D450%2C600/sign=/zhidao/wh%3D600%2C800/sign=c6a0edc1d43f28e22b22cc/a6efce1b9d16fdfafbb4c897b48f8c5495ee7bea.hiphotos
提问者评价
| = |x0 -1/x1-1/x2-...-1/xn
其他类似问题
为您推荐:
行列式的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁以下试题来自:
问答题 设实对称矩阵 ,求可逆矩阵P,使P-1AP为对角形矩阵,并计算行列式|A-E|的值. 参考答案
由矩阵A的特征多项式
<img src="/UploadFiles/2016-03/caijuexing/5947333.jpg"......
为您推荐的考试题库
你可能感兴趣的试题
1.问答题 参考答案
(Ⅰ)按已知条件,有
A(&1,&2,&3)=(&1+&...... 2.问答题 参考答案
[解] 由矩阵A的特征多项式
<img src="/UploadFiles/2016-03/caijuexing/544773....... 3.问答题 参考答案
(1)因为A和对角矩阵B相似,所以-1,2,y就是矩阵A的特征值
<img src="/UploadFiles/2016-03/...... 4.问答题 参考答案
A的特征多项式为
<...... 5.问答题 参考答案
(Ⅰ)设&是属于特征值&0的特征向量,即
<img src="/UploadFi......
热门相关试卷
最新相关试卷矩阵行列式|A|如何计算
对角线展开:|a1 b1| =a1b2-a2b1|a2 b2| |a1 b1 c1||a2 b2 c2|=a1b2c3+b1c2a3+c1a2b3-a3b2c1-b3c2a1-c3a2b1|a3 b3 c3|降阶展开(适合高阶行列式)如三阶行列式 按第一阶展开|a b c||d e f |=a×|e f|-b×|d f|+c×|d e| |g h i | |h i| |g i| |g h|按中阶展开以上行列式=e×|a c|-d×|b c|-f×|a b||g i| |h i| |g h|其他行列式计算相仿
为您推荐:
其他类似问题
我不懂工科生什么花哨的对角线展开、降阶展开、中阶展开,我只懂理科生计算行列式的方法,就是将行列式化为上三角形行列式,然后对角线元素依次相乘,化为上三角形的过程中如果不是满秩,结果就是0。当然,你可以用克拉默法则进行计算,或者将行列式分解,如果你遇到了比较诡异的行列式,那就看你的个人经验了,有的是按行进行化简,有的是按列进行化简,总而言之就一句话,什么时候把行列式化成上三角行列式了,你就赢了...
用matlab做
哈哈输入a然后就det(a)就好啦啦啦啦
扫描下载二维码矩阵计算器
矩阵计算器
输入矩阵 A:
&矩阵的行列式
矩阵计算器可以计算一个矩阵的性质:秩,行列式,迹,矩阵转置,逆矩阵和方阵。
矩阵计算的例子
&矩阵的行列式
1 3 4 0 2 33 4
6 7 8 5 62 7 8
98 7 6 9 8 7 6
54 3 2 5 4 3 2
1 2 0 4 1 2 34
5 6 7 8 5 6 78
9 8 7 6 9 8 72
矩阵计算器 语言设置:
- 面向所有人的强大数学工具.
使用本网站即表示您接受和。
保留所有权利

我要回帖

更多关于 计算下列行列式 的文章

 

随机推荐