📄 jacobi.c
字号:
#include <stdio.h>
#include <math.h>
#define N 3
void main()
{
int n1=3;
double x1[N]={0,0,0};
double a1[N][N]={1,2,-2,1,1,1,2,2,1};
double b1[N]={1,3,5};
void Jacobi(int n,double xx[N],double a[N][N],double b[N]);
Jacobi(n1,x1,a1,b1);
getchar();
}
void Jacobi(int n,double xx[N],double a[N][N],double b[N])
{
int i,j,k;
double sum;
double x[N],bj[N][N],fj[N];
for(i=0;i<N;i++)
{
x[i]=xx[i];
fj[i]=b[i]/a[i][i];
for(j=0;j<N;j++)
{
if(i==j)
{
bj[i][j]=0;
}
else
{
bj[i][j]=-a[i][j]/a[i][i];
}
}
}
for(k=0;k<n;k++)
{
for(i=0;i<N;i++)
{
sum=0.0;
for(j=0;j<N;j++)
{
sum=sum+x[j]*bj[i][j];
}
xx[i]=sum+fj[i];
}
for(i=0;i<N;i++)
{
x[i]=xx[i];
}
}
printf("The result of X is :\n");
for(i=0;i<N;i++)
{
printf(" %f\n",x[i]);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -