化行列式为上三角形式 C++

    #include <iostream>
#include <conio.h>
using namespace std;
int main()
{
int a;
cout<<"请输入行列式维数"<<endl;
cin>>a;
int i,j,k=0;
float **A;
A=new float *[a+1];
for(i=0;i<=a;i++)
A[i]=new float [a+1];
float B;
cout<<"请输入行列式元素"<<endl;
for(i=1;i<=a;i++)
{
for(j=1;j<=a;j++)
{
cin>>A[i][j];
}
}
cout<<"您输入的行列式是:"<<endl;
for(i=1;i<=a;i++)
{
for(j=1;j<=a;j++)
{
cout<<'\t';
if(j%a==0)
cout<<A[i][j]<<endl;
else
cout<<A[i][j];
}
}
for(i=1;i<=a-1;i++)
{
for(j=i;j<=a-1;j++)
{
B=A[j+1][i]/A[i][i];
for(k=1;k<=a;k++)
{
A[j+1][k]-=B*A[i][k];
}
}
}
cout<<"变换后的行列式是:"<<endl;
for(i=1;i<=a;i++)
{
for(j=1;j<=a;j++)
{
cout<<'\t';
if(j%a==0)
cout<<A[i][j]<<endl;
else
cout<<A[i][j];
}
}
getch();
return 0;
}

因水平有限  有不足的地方还请各位指出!以便进一步提高

posted @ 2012-03-16 20:07  碧海一波  阅读(486)  评论(0编辑  收藏  举报