當前位置:編程學習大全網 - 編程軟體 - 用C語言編程 使‖X^(k+1)-X^k ‖∞≤10^-3 用雅可比叠代法,線性方程組在問題補充裏

用C語言編程 使‖X^(k+1)-X^k ‖∞≤10^-3 用雅可比叠代法,線性方程組在問題補充裏

#include <math.h>

#include <stdio.h>

double norm(double *x,double *y,int n)

{

int i=0;

double s=0;

for(i=0;i<n;i++)

s=s+fabs(x[i]-y[i])*fabs(x[i]-y[i]);

return sqrt(s);

}

void Jacobi(double A[],double b[],double x0[],double x[],int n1)

{

int n=100;

double ee=0.001,s=0;

int i,j,k;

for(i=1;i<=n;i++)

{ for(j=0;j<n1;j++)

{ s=0;

for(k=0;k<n1;k++)

{if(k!=j) s=s+A[j*n1+k]*x0[k];

}

x[j]=(b[j]-s)/A[j*n1+j];

}

if (norm(x,x0,n1)<=ee)

break;

for(j=0;j<n1;j++) x0[j]=x[j];

}

}

int main()

{

double a[3][3]={{9,-1,-1},{-1,8,0},{-1,0,9}};

double b[3]= {7,7,8};

double x0[3]= {0,0,0.0};

double x[3]= {0,0,0};

int n1=3,i;

Jacobi(a,b,x0,x,n1);

for (i=0;i<n1; i++)

printf("x(%d)=%6.4f\n",i+1,x[i]);

system("pause");

return(0);

}

敢不敢自己寫啊?

  • 上一篇:初中畢業可以學什麽技術?
  • 下一篇:《點燃我,溫暖妳》什麽時候開播的?
  • copyright 2024編程學習大全網