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

📄 割线法.txt

📁 方程求根 二分法 割线法 牛顿迭代法 vc++源程序
💻 TXT
字号:
#include<stdio.h>
#include<math.h>
#define N 100
#define eps 1e-6
#define eta 1e-8

float Gexian(float(*f)(float),float x0,float x1)
{
	float x2,d0,d1;
	int k=0;
	do
	{
		x2=x1-(*f)(x1)*(x1-x0)/((*f)(x1)-(*f)(x0));
		if(k++>N||fabs((*f)(x1)-(*f)(x0))<eps)
		{
			printf("\nGexian迭代失败");
			break;
		}
		d0=fabs(x2)<1?x2-x0:(x2-x0)/x2;
		d1=fabs(x2)<1?x2-x1:(x2-x1)/x2;
		x0=x1;
		x1=x2;
		printf("x(%d)=%f\t",k,x1);
	}
	while(fabs(d0)>eps||fabs(d1)>eps&&fabs((*f)(x2))>eta);
	return x2;
}

float f(float x)
{
	return x*x*x+x*x-3*x-3;
}

void main()
{
	float x0,x1,y0;
	printf("请输入迭代初值x0,x1\n");
	scanf("%f%f",&x0,&x1);
	printf("x(0)=%f\nx(1)=%f\n",x0,x1);
	y0=Gexian(f,x0,x1);
	printf("方程的根为:%f\n",y0);
}

⌨️ 快捷键说明

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