69,373
社区成员
发帖
与我相关
我的任务
分享
#include<stdio.h>
//void main(void)
int main(void)
{
double x1,x2,f1,f2,x,f,t=0;
printf("请输入区间范围");
scanf("%lf%lf",&x1,&x2);
f1 = x1*x1*x1-7*x1-1;
f2 = x2*x2*x2-7*x2-1;
do
{
if(f1*f2 > 0) {
printf("此区间没有根,请重新输入");
break;
}
else
{
x=(x2+x1)/2;
f=x*x*x-7*x-1;
}
if(f*f1>0)
{
x1=x;
f1=f;
}
else
{
x2=x;
f2=f;
}
t = t+1;
} while(0.000001>x2-x1);
printf("该区间上有根%lf,二分次数为%lf",x,t);
}