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

📄 追赶法.c

📁 数值计算的源代码
💻 C
字号:
#include<stdio.h>
#define N 10
void main()
{
	float a[N],b[N],c[N],f[N];
	int i,n,j;
	printf("input n:");	
	scanf("%d",&n);

	printf("input a:\n");
    for(i=2;i<=n;i++)
	scanf("%f",&a[i]);

	printf("input b:\n");
    for(i=1;i<=n;i++)
	scanf("%f",&b[i]);

	printf("input c:\n");
    for(i=1;i<=n-1;i++)
	scanf("%f",&c[i]);

	printf("input f:\n");
    for(i=1;i<=n;i++)
	scanf("%f",&f[i]);


	printf("the expand juzhen:\n");
    for(i=1;i<=n;i++)
      if(i==1){printf("%f %f ",b[i],c[i]);for(j=3;j<=n;j++)printf("0.000000 ");printf("%f\n",f[i]);}
		else if(i==n){for(j=1;j<=n-2;j++)printf("0.000000 ");printf("%f %f ",a[i],b[i]);printf("%f\n",f[i]);}
		else {for(j=1;j<=i-2;j++)printf("0.000000 ");printf("%f %f %f ",a[i],b[i],c[i]);for(j=1;j<=n-i-1;j++)printf("0.000000 ");printf("%f\n",f[i]);}


for(i=1;i<=n-1;i++)
{ 
	c[i]=c[i]/b[i];
    b[i+1]=b[i+1]-a[i+1]*c[i];
}


	printf("fenjiehou:\n");
    for(i=1;i<=n;i++)
      if(i==1){printf("%f %f ",b[i],c[i]);for(j=3;j<=n;j++)printf("0.000000 ");printf("%f\n",f[i]);}
		else if(i==n){for(j=1;j<=n-2;j++)printf("0.000000 ");printf("%f %f ",a[i],b[i]);printf("%f\n",f[i]);}
		else {for(j=1;j<=i-2;j++)printf("0.000000 ");printf("%f %f %f ",a[i],b[i],c[i]);for(j=1;j<=n-i-1;j++)printf("0.000000 ");printf("%f\n",f[i]);}

f[0]=0;
for(i=1;i<=n;i++)
f[i]=(f[i]-a[i]*f[i-1])/b[i];

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


for(i=n-1;i>=1;i--)
f[i]=f[i]-c[i]*f[i+1];

printf("\nthe roots are:\n");
for(i=1;i<=n;i++)
printf("X%d=%f ",i,f[i]);

}

⌨️ 快捷键说明

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