用二分法求方程的根.cpp
来自「(1)该码功能是将数组后n为一次放在数组前面」· C++ 代码 · 共 35 行
CPP
35 行
#include<iostream.h>
#include<math.h>
double f1(double x)
{return x*x+4*x-4;}
double f2(double x)
{return x*x*x+2*x*x+3*x-15;}
void xx(double(*fp)(double),double &a,double&b)
{
do
{
cout<<"请输入方程的区间:";
cin>>a>>b;
}
while(fp(a)*fp(b)>0);//
}
void fun(double(*fp)(double))
{
double x0,x1,x2;
xx(fp,x1,x2);//
do{
x0=(x2+x1)/2;//
cout<<x1<<','<<x2<<','<<x0<<endl;
if(fp(x0)*fp(x1)>0) x1=x0;
else x2=x0;
}while(fabs(fp(x0))>1e-5);
cout<<"方程的解为:"<<x0<<endl;
}
void main()
{
cout<<"解第一个方程:\n";
fun(f1);
cout<<"解第二个方程:\n";
fun(f2);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?