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

📄 雅可比迭代.c

📁 数值计算的源代码
💻 C
字号:
#include<stdio.h>
#include<math.h>

void main()
{
	
float a[11][12],x[2][11],t,e;
	int n,Num,i,j,k,flag=0;
	printf("input iterative times:");
    scanf("%d",&Num);
	printf("input error rang:");
    scanf("%f",&e);

  
	printf("input unknown numbers<max=10>:");
    scanf("%d",&n);
	printf("input all quotieties:\n");

	for(i=1;i<=n;i++)
		for(j=1;j<=n+1;j++)
			scanf("%f",&a[i][j]);




	for(i=1;i<=n;i++)x[0][i]=0;
    for(i=1;i<=n;i++)printf("%f ",x[0][i]);printf("\n");



	for(k=1;k<=Num;k++)
	{
       for(i=1;i<=n;i++)
	   {t=0;
        for(j=1;j<=i-1;j++)
			t+=a[i][j]*x[0][j];
        for(j=i+1;j<=n;j++)
			t+=a[i][j]*x[0][j];
		x[1][i]=(a[i][n+1]-t)/a[i][i];
	   }

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

	   for(i=1;i<=n;i++)if(fabs(x[1][i]-x[0][i])<=e)flag+=1;


	   if(flag==n)break;
	   else for(i=1;i<=n;i++)x[0][i]=x[1][i];

	}


if(k>Num)printf("\nno roots");
else {printf("\nThe roots:");for(i=1;i<=n;i++)printf("%f ",x[1][i]);}


}


⌨️ 快捷键说明

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