📄 chase_after.cpp
字号:
#include<iostream>
using namespace std;
#define N 2
#define MAX 100
void chase_after(double (*A)[N],double *f,double *X)
{
int i;
double a[N],b[N],c[N-1],n[N]; //n is up triangle
for(i=0;i<N-1;i++) //unit matrix value
{ //which is not 1
a[i+1]=A[i+1][i];
b[i]=A[i][i];
c[i]=A[i][i+1];
}
b[N-1]=A[N-1][N-1];
n[0]=c[0]/b[0]; //figure out n
for(i=1;i<N;i++)
n[i]=c[i]/(b[i]-a[i]*n[i-1]);
double Y[N]; //figure out Y from Ly=f
Y[0]=f[0]/b[0];
for(i=1;i<N;i++)
Y[i]=(f[i]-a[i]*Y[i-1])/(b[i]-a[i]*n[i-1]);
X[N-1]=Y[N-1]; //figure out X from Ux=y
for(i=N-2;i>=0;i--)
X[i]=Y[i]-n[i]*X[i+1];
}
int main()
{
double A[N][N],B[N],X[N];
double L[N][N],U[N][N];
int i;
initialnise(A,B);
for(i=0;i<N;i++) //show X
cout<<cout.width(10)<<X[i];
cout<<endl;
chase_after(A,B,X); //chase_after method
for(i=0;i<N;i++) //show X
cout<<cout.width(10)<<X[i];
cout<<endl;
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -