c++用二分法求出方程e^x+10x-2=0的实根,误差不得超过1/2*10^-2,运行结果空白,但是没有发现错误

#include<iostream>#include<cmath>usingnamespacestd;voidmain(){doublefunction(double);... #include<iostream>
#include<cmath>
using namespace std;
void main()
{
double function(double);
double x1=0,x2=1,x0;
do
{
x0=(x1+x2)/2;
function(x0);
if(function(x1)*function(x0)<0)
{
x2=x0;
}
else
{
x1=x0;
}
}while((x2-x1)>=(1/2)*pow(10,-2));
cout<<"the result is:"<<x0<<endl;
}
double function(double x)
{
return(exp(x)+10*x-2);
}
展开
 我来答
plehdeen
2013-10-06 · TA获得超过507个赞
知道小有建树答主
回答量:385
采纳率:100%
帮助的人:88.2万
展开全部
while((x2-x1)>=(0.5*pow(10,-2)))
不要用1/2这种类型的,因为默认的1和2是int型,所以1/2=0
kaixingui2012
2013-10-06 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6479万
展开全部
while((x2-x1)>=0.5e-2);
while语句修改一下试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式