如何用降阶法求解四阶行列式的计算,请帮我编一个C语言程序。
1个回答
展开全部
It's easy!I have writed a N-demonstration computing program for you!
double DemoCompute(double *date,int N)
{
if (N==1) return *data;
double Result=0;
int i=1;
for(i=1;i<=N;i++)
{
double *tmp=malloc(sizeof(double)*(N-1)*(N-1));
double *head=tmp;
int j=0,k=0;
for(j=1;j<=N;j++)
for(k=1;k<=N;k++)
{if (j!=1 && k!=i) *(tmp++)=*(data+(i-1)*N+j-1);}
if (i%2==1) Result += DemonCompute(head,N-1);
else Result-=DemonCompute(head,N-1);
}
return Result;
}
//前几天刚写完,测试通过!
//用data按行存储行列式,并且N是这个行列的阶数.
不对,百度消息我。
double DemoCompute(double *date,int N)
{
if (N==1) return *data;
double Result=0;
int i=1;
for(i=1;i<=N;i++)
{
double *tmp=malloc(sizeof(double)*(N-1)*(N-1));
double *head=tmp;
int j=0,k=0;
for(j=1;j<=N;j++)
for(k=1;k<=N;k++)
{if (j!=1 && k!=i) *(tmp++)=*(data+(i-1)*N+j-1);}
if (i%2==1) Result += DemonCompute(head,N-1);
else Result-=DemonCompute(head,N-1);
}
return Result;
}
//前几天刚写完,测试通过!
//用data按行存储行列式,并且N是这个行列的阶数.
不对,百度消息我。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询