行列式怎么计算的忘记行列式怎么计算了,谁知道啊 举个例子 1 3 52 4 68 4 9 给我个式子

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 09:53:30
行列式怎么计算的忘记行列式怎么计算了,谁知道啊 举个例子 1 3 52 4 68 4 9 给我个式子

行列式怎么计算的忘记行列式怎么计算了,谁知道啊 举个例子 1 3 52 4 68 4 9 给我个式子
行列式怎么计算的
忘记行列式怎么计算了,谁知道啊 举个例子 1 3 5
2 4 6
8 4 9 给我个式子

行列式怎么计算的忘记行列式怎么计算了,谁知道啊 举个例子 1 3 52 4 68 4 9 给我个式子
1×4×9+3×6×8+5×2×4-1×6×4-3×2×9-5×4×8=-18 3条主对角线上的数乘积之和减去3条副对角线上的数的乘积之和,此方法只适用于3阶和2阶行列式计算,通用的方法是按行或按列展开逐次降阶计算,最好是变换后再计算

计算机中更通用是先将原行列式化为上三角行列式
然后将主对角线上元素相乘即可
相关C代码如下:
//Converting given determinant to up-triangle determinant
void up_tri(double m[][MAX],int n)
{
//array m is the pending matrix

全部展开

计算机中更通用是先将原行列式化为上三角行列式
然后将主对角线上元素相乘即可
相关C代码如下:
//Converting given determinant to up-triangle determinant
void up_tri(double m[][MAX],int n)
{
//array m is the pending matrix
//n is the dimension of this matrix
int i,j,e;
double d=1.0;
for(i=1;i for(e=i;e {
if(0==m[i-1][i-1]) //If it equals 0, it is unnecessary to operate
break;
d=m[e][i-1]/m[i-1][i-1];
for(j=i-1;j m[e][j]-=d*m[i-1][j];
}
}
//Calculating the value of given determinant
double det(double m[][MAX],int n)
{
//array m is the pending matrix
//n is the dimension of this matrix
int i,j;
double t=1;
up_tri(m,n); //Converting matrix m to a up-triangle determinant
for(i=0,j=0;i t*=m[i][j]; //Multiply items on prime diagonal continuously
//obtain the determinant
return t;
}

收起