📄 高斯-塞得尔算法.txt
字号:
#include <iostream.h>
#include <math.h>
void main(void)
{
double x10,x20,x30,x11,x21,x31,x1,x2,x3;
int i,n=100,k=0;
double e=0.001;
double max(double a,double b);
cout<<"请赋初值:"<<endl<<"x10=";
cin>>x10;
cout<<"x20=";
cin>>x20;
cout<<"x30=";
cin>>x30;
while(k<=n)
{
x11=0.1*x20+0.2*x30+0.72;
x21=0.1*x11+0.2*x30+0.83;
x31=0.2*x21+0.2*x11+0.84;
if(max(max(fabs(x11-x10),fabs(x21-x20)),fabs(x31-x30))<e)
{ x1=x11,x2=x21,x3=x31;
cout<<"输出结果:"<<endl;
cout<<"x1="<<x1<<endl;
cout<<"x2="<<x2<<endl;
cout<<"x3="<<x3<<endl;
break;
}
else x10=x11,x20=x21,x30=x31;
k=k+1;
}
cout<<"k="<<k<<endl;
}
double max(double a,double b)
{
if(a<b) return b;
else return a;
}
请赋初值:
x10=1
x20=5
x30=3
输出结果:
x1=1.10002
x2=1.20001
x3=1.30001
k=5
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -