⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 解线性方程组的迭代法.c

📁 高斯-塞德尔迭代法算法: 设方程组AX=b 的系数矩阵的对角线元素
💻 C
字号:
#include<stdio.h>
#include<math.h>
#include<string.h>
#define M 3
#define N 4
void main()
{	static float a[M][N]={{5,-1,-1,3},
{1,-10,20,11},{-10,1,-5,-14}};
    float x[M]={0,0,0};
	double r;
	float t,q,e=0.0001;
	int i=0,j,k,lm=100;
	for(i;i<M;i++)
	{  for(j=0;j<N;j++)
		  printf("%15f",a[i][j]);
		 printf("\n");
	}
	for(k=0;k<lm;k++)
	  {
	  	r=0;
	  	for(i=0;i<M;i++)
	  	{
	  		q=0;
	  		t=x[i];
for(j=0;j<M;j++)
	  		 {
	  		 	 if(j!=i) q=q+a[i][j]*x[j];
	  		     x[i]=(a[i][N-1]-q)/a[i][i];
	  		 }
	  		 if(fabs(x[i]-t)>r) r=fabs(x[i]-t);
	  	}
	  	if(r<e)break;
	  }
	  if(k==lm)printf("no");
	  else
	    for(i=0;i<M;i++)
	     printf("x(%d)=%15.7f\n",i,x[i]);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -