欢迎来到天天文库
浏览记录
ID:39504016
大小:40.00 KB
页数:5页
时间:2019-07-04
《解线性方程组--数值分析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、#include#include#defineMAXN4usingnamespacestd;voidM(doublee[MAXN]);voidJacobi(doublea[MAXN][MAXN],doubleb[MAXN],doubleTOL);voidGauss(doublea[MAXN][MAXN],doubleb[MAXN],doubleTOL);voidSOR(doublea[MAXN][MAXN],doubleb[MAXN],doublew,doubl
2、eTOL);intmain(){inti,j,choice;doublea[MAXN][MAXN],b[MAXN],TOL,w;TOL=pow(10,-6);cout<<"t**************************************************"<3、out<<"tt温馨提示:更改MAXN!"<>a[i][j];cout<<"线性方程的右端项:"<4、>b[i];cout<>choice;switch(choice){case1:Jacobi(a,b,TOL);break;case2:Gauss(a,b,TOL);break;case3:cout<<"请输入w的值:";cin>>w;SOR(a,b,w,TOL5、);break;default:cout<<"该线性方程组无法运用以上的三种方法求的解!"<e[0])e[0]=e[i];}voidJacobi(doublea[MAXN][MAXN],doubleb[MAXN],doubleTOL){inti,j;//声明一个中间变量doubles=0;//第一步:对线性方程组的系数矩阵进行赋值//右端项以及初始向量6、的初始化doublex0[MAXN]={0,0,0,0};doublex[MAXN];doublee[MAXN];//第二步:利用while循环进行求解do{for(i=0;i7、e);//进行判断将符合条件的解向量输出if(e[0]TOL);}voidGauss(doublea[MAXN][MAXN],doubleb[MAXN],doubleTOL){inti,j;doubles=0,s1=0,s2=0;doublex8、0[MAXN]={0,0,0,0};doublex[MAXN];doublee[MAXN];do{for(i=0;i
3、out<<"tt温馨提示:更改MAXN!"<>a[i][j];cout<<"线性方程的右端项:"<4、>b[i];cout<>choice;switch(choice){case1:Jacobi(a,b,TOL);break;case2:Gauss(a,b,TOL);break;case3:cout<<"请输入w的值:";cin>>w;SOR(a,b,w,TOL5、);break;default:cout<<"该线性方程组无法运用以上的三种方法求的解!"<e[0])e[0]=e[i];}voidJacobi(doublea[MAXN][MAXN],doubleb[MAXN],doubleTOL){inti,j;//声明一个中间变量doubles=0;//第一步:对线性方程组的系数矩阵进行赋值//右端项以及初始向量6、的初始化doublex0[MAXN]={0,0,0,0};doublex[MAXN];doublee[MAXN];//第二步:利用while循环进行求解do{for(i=0;i7、e);//进行判断将符合条件的解向量输出if(e[0]TOL);}voidGauss(doublea[MAXN][MAXN],doubleb[MAXN],doubleTOL){inti,j;doubles=0,s1=0,s2=0;doublex8、0[MAXN]={0,0,0,0};doublex[MAXN];doublee[MAXN];do{for(i=0;i
4、>b[i];cout<>choice;switch(choice){case1:Jacobi(a,b,TOL);break;case2:Gauss(a,b,TOL);break;case3:cout<<"请输入w的值:";cin>>w;SOR(a,b,w,TOL
5、);break;default:cout<<"该线性方程组无法运用以上的三种方法求的解!"<e[0])e[0]=e[i];}voidJacobi(doublea[MAXN][MAXN],doubleb[MAXN],doubleTOL){inti,j;//声明一个中间变量doubles=0;//第一步:对线性方程组的系数矩阵进行赋值//右端项以及初始向量
6、的初始化doublex0[MAXN]={0,0,0,0};doublex[MAXN];doublee[MAXN];//第二步:利用while循环进行求解do{for(i=0;i7、e);//进行判断将符合条件的解向量输出if(e[0]TOL);}voidGauss(doublea[MAXN][MAXN],doubleb[MAXN],doubleTOL){inti,j;doubles=0,s1=0,s2=0;doublex8、0[MAXN]={0,0,0,0};doublex[MAXN];doublee[MAXN];do{for(i=0;i
7、e);//进行判断将符合条件的解向量输出if(e[0]TOL);}voidGauss(doublea[MAXN][MAXN],doubleb[MAXN],doubleTOL){inti,j;doubles=0,s1=0,s2=0;doublex
8、0[MAXN]={0,0,0,0};doublex[MAXN];doublee[MAXN];do{for(i=0;i
此文档下载收益归作者所有