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

📄 bi_formula.txt

📁 二分法求方程的实根 很简单的一个程序 要不是为了下一个东西
💻 TXT
字号:
//用二分法求方程的实根
#include<iostream.h>
#include<math.h>

double root(double a,double b,double d1,double d2);
double f(double x);
void main()
{
	double a,b,d1,d2;
	a=1;
	b=2;
	d1=pow(10,-6);
    d2=pow(10,-10);
	root(a,b,d1,d2);	
}

double f(double x)     //子函数,以便程序编写符合数学习惯;且在此处定义具体方程
{	double y;
	y=x+log(x)-2.2;
	return y;
}

/*求根子函数。其中:
    a:  区间左端点
	b:  区间右端点
	d1: 区间长度阀值(区间长度若小于d1,则可结束循环)
	d2: 区间中点处的函数值与零的差值的阀值
       (区间中点处的函数值与零的产值若小于d2,则可结束循环)*/
double root(double a,double b,double d1,double d2)  
{   
	if(f(a)*f(b)>0)
		cout<<"无法用二分法求得方程的实根"<<endl;
	else
	{
		for(;(fabs(a-b)>=d1)&&(fabs(f((a+b)/2))>=d2);)
		{
			if(f(a)*f((a+b)/2)>0)
			{
				a=(a+b)/2;
				continue;
			}					  
			else
			{
				b=(a+b)/2;
				continue;
			}
		}		
		cout<<"方程的实根为x="<<(a+b)/2<<endl;
		return (a+b)/2;
	}
}

⌨️ 快捷键说明

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