chasingMethod

#include
int main()
{


int i,n;
float X[10],A[10],B[10],C[10],F[10];
printf("请输入方程组的未知个数n:\n");
scanf("%d",&n);
printf("对应系数矩阵的三个向量a,b,c;方程组的右端项f:\n");
for(i=2;i<=n;++i)
{
scanf("%f",&A[i]);
}
for(i=1;i<=n;++i)
{
scanf("%f",&B[i]);
}
for(i=1;i {
scanf("%f",&C[i]);
}
for(i=1;i<=n;++i)
{
scanf("%f",&F[i]);
}

X[1]=F[1]/B[1];//其实就是y1
C[1]=C[1]/B[1];//其实就是t1
for(i=2;i<=n-1;++i)//追的过程
{
B[i]=B[i]-A[i]*C[i-1];//其实就是求Si
X[i]=(F[i]-A[i]*X[i-1])/B[i];//其实就是求Yi
C[i]=C[i]/B[i];//其实就是求Ti
}
//Si=B[i],Yi=X[i],Ti=C[i]
B[n]=B[n]-A[n]*C[n-1];
X[n]=(F[n]-A[n]*X[n-1])/B[n];//真实的X[n]
for(i=n-1;i>=1;--i)//赶的过程
{
X[i]=X[i]-C[i]*X[i+1];
}
printf("\n方程的解为:\n");
for(i=1;i<=n;i++)
{
printf("%3f ",X[i]);
}
printf("\n");
return 0;
}

你可能感兴趣的:(Numerical,Calculation)