#include<stdio.h>
#include<math.h>
double Z[4][4]; /*定义一个全局二维数组用来存放N-1阶余子式,因为A的伴随矩阵除以|A|时会产生小数,因此定义成float而非int*/
double R[4][4];
double daishu(double *p,int n);
void bansui(double Z[4][4],double R[4][4]);
/////////////////////////////////////////////
void main()
{
double w[4][4];
int m=4,i,j;
double r;
memset(w,0,sizeof(w));
memset(R,0,sizeof(R));
Z[0][0]=1;Z[0][1]=1;Z[0][2]=1;Z[0][3]=1;
Z[1][0]=0;Z[1][1]=1;Z[1][2]=1;Z[1][3]=1;
Z[2][0]=0;Z[2][1]=0;Z[2][2]=1;Z[2][3]=1;
Z[3][0]=0;Z[3][1]=0;Z[3][2]=0;Z[3][3]=1;
r=daishu(&Z[0][0],m);
// printf("%f\n",r);
bansui(Z,R); /*调用n_1()函数*/
for(i=0;i<m;i++) /*打印A的逆矩阵*/
{
for(j=0;j<m;j++)
{
w[i][j]=R[i][j]/r;
// printf("%f\t",w[i][j]);
}
// printf("\n");
}
}
double daishu(double *p,int n) /*计算行列式的函数*/
{
int k=0,i,s2=0,s1=0,j,s,t;
for(j=0;j<n;j++)
{
k=j;t=1;
for(i=1;i<=n;i++) /*对角线元素乘积*/
{
t=t*p[k];
if ((k+1)%n==0) k=k+1;
else k=k+n+1;
}
s1=s1+t; /*对角线乘积求和*/
}
for(j=0;j<n;j++)
{
k=j;t=1;
for(i=1;i<=n;i++)
{
t=t*p[k];
if(k%n==0) k=k+(2*n-1);
else k=k+(n-1);
}
s2=s2+t;
}
s=s1-s2;
return s;
}
/////////////////////////////////////////////////////
void bansui(double Z[4][4],double R[4][4]) /*把除第i行j列后的N-1阶矩阵的每个元素赋给一维数组d[]的函数*/
{
int i,j,e,f,l,m,k,t;
double q[3][3];
double y[4][4];
double tt;
//double daishu(int *p,int n);
memset(q,0,sizeof(q));
memset(y,0,sizeof(y));
for(i=0;i<4;i++)
{
l=i;
for(j=0;j<4;j++)
{
m=j;
k = 0;
for(e=0;e<4;e++)
{
t = 0;
if(e==l)
continue;
for(f=0;f<4;f++)
{
if(f==m)
continue;
q[k][t] = Z[e][f];
t++;
}
k++;
}
/*每得到一个一维数组d[]的值,便调用JS()函数,得到除第i行j列后的N-1阶矩阵的行列式的值,也即是余子式M[j]*/
tt=daishu(&q[0][0],3);
R[m][l]=tt*pow((-1),(l+m)); /*并把余子式的值存放在全局二维数组z[]中*/
}
}
}
nizhen.rar_矩阵求逆
版权申诉
25 浏览量
2022-09-23
07:49:00
上传
评论
收藏 1KB RAR 举报
小波思基
- 粉丝: 72
- 资源: 1万+
最新资源
- 毕业设计求职招聘系统-SpringBoot+vue前后端源码+数据库sql.zip
- 利用Rosweb实现ros与网页交互(1)
- 基于卷积神经网络的医学病理图像识别源码+数据集+详细资料合集.zip
- 基于树莓派的自动驾驶小车,利用树莓派和tensorflow实现小车在赛道的自动驾驶
- 前端面试必备 - Vue篇.rar
- LM324_datasheet.pdf
- 全新Storm+Core+API管理系统源码
- 基于RP2040的电子沙漏,使用RP2040游戏机开发板,灯板是74HC595驱动的8*8LED矩阵
- 基于SSM和VUE的商店POS积分管理系统(免费提供全套java开源项目源码+论文)
- 基于SpringBoot的“在线动漫信息平台”的设计与实现.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈