欢迎来到天天文库
浏览记录
ID:14343283
大小:82.00 KB
页数:4页
时间:2018-07-28
《实验二列主元消元法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、列主元消元法解线性方程:学院:计算机与信息工程学院班级:计算机科学与技术师范汉班学号:20081121107姓名:黄志强指导老师:马季驌1.算法分析:列主元消元法解线性方程组的核心思想与高斯消元法一致。都是将增广矩阵中的系数矩阵部分化为上三角形式,然后采用回代或者将系数矩阵化为对角型从而得到方程组的解。只不过在列主元消元法中需要将待处理列的元素中取绝对值最大的那个通过行变换移至对角线位置,作为消元媒介。只需要添加一个找列主元再换行的语句即可。大多数对程序的说明,都加在程序中作为注释。2.程序代码:#includ
2、eusingnamespacestd;floata[20][20];floatfabs(floatx){returnx>0?x:-x;}intmain(){intn,i,j,p,x,y,f,q,bigq;floatk,t,max;cout<<"请依次输入行列式的阶数:";while(cin>>n&&n>0){intjudge=1;//作为系数矩阵对应行列式是否为0的标识;cout<<"请输入线性方程组的系数矩阵:"<3、+){cin>>a[i][j];}//输入线性方程组的系数矩阵cout<<"请输入线性方程组的常数列:"<>a[i][n+1];//输入完毕for(j=1;j<=n;j++)//j代表一大步{cout<<"第"<max){max=f4、abs(a[q][j]);bigq=q;}}cout<<"列主元为第"<5、j]==0){cout<<"该线性方程组无解或者解不唯一(提前结束):"<<0<j&&max!=0;i--)//i代表第J大步的第i小步{k=-a[i][j]/a[j][j];for(p=1;p<=n+1;p++){a[i][p]+=a[j][p]*k;if(a[i][p]<0.0001)a[i][p]=0;}6、//依次消去a[i][j]元,构造上三角行列式cout<<"一小步:行乘系数为:"<7、/**********************************************************************************************************/for(j=1;j<=n;j++)//j代表一大步for(i=f=1;i8、对角线系数矩阵/*cout<
3、+){cin>>a[i][j];}//输入线性方程组的系数矩阵cout<<"请输入线性方程组的常数列:"<>a[i][n+1];//输入完毕for(j=1;j<=n;j++)//j代表一大步{cout<<"第"<max){max=f
4、abs(a[q][j]);bigq=q;}}cout<<"列主元为第"<5、j]==0){cout<<"该线性方程组无解或者解不唯一(提前结束):"<<0<j&&max!=0;i--)//i代表第J大步的第i小步{k=-a[i][j]/a[j][j];for(p=1;p<=n+1;p++){a[i][p]+=a[j][p]*k;if(a[i][p]<0.0001)a[i][p]=0;}6、//依次消去a[i][j]元,构造上三角行列式cout<<"一小步:行乘系数为:"<7、/**********************************************************************************************************/for(j=1;j<=n;j++)//j代表一大步for(i=f=1;i8、对角线系数矩阵/*cout<
5、j]==0){cout<<"该线性方程组无解或者解不唯一(提前结束):"<<0<j&&max!=0;i--)//i代表第J大步的第i小步{k=-a[i][j]/a[j][j];for(p=1;p<=n+1;p++){a[i][p]+=a[j][p]*k;if(a[i][p]<0.0001)a[i][p]=0;}
6、//依次消去a[i][j]元,构造上三角行列式cout<<"一小步:行乘系数为:"<7、/**********************************************************************************************************/for(j=1;j<=n;j++)//j代表一大步for(i=f=1;i8、对角线系数矩阵/*cout<
7、/**********************************************************************************************************/for(j=1;j<=n;j++)//j代表一大步for(i=f=1;i8、对角线系数矩阵/*cout<
8、对角线系数矩阵/*cout<
此文档下载收益归作者所有