练习专区

今天的一小步就是明天的一大步
Problem 1153 二分法求根
Accepted: 12   Total Submit: 28
Time Limit: 1000ms   Memory Limit: 30720KB
Description
用二分法求方程的根:2x^3-4x^2+3x-6=0 一般地,对于函数f(x),如果存在实数c,当x=c时,f(c)=0,那么把x=c叫做函数f(x)的零点(根)。 解方程即要求f(x)的所有零点。 假定f(x)在区间(x,y)上连续 先找到a、b,使f(a),f(b)异号,(如果f(a)=0或f(b)=0说明已找到)说明在区间(a,b)内一定有零点,然后求f[(a+b)/2], 现在假设f(a)<0,f(b)>0,aa,从①开始继续使用 中点函数值判断。 如果f[(a+b)/2]>0,则在区间(a,(a+b)/2)内有零点,(a+b)/2<=b,从①开始继续使用 中点函数值判断。 这样就可以不断接近零点。 通过每次把f(x)的零点所在小区间收缩一半的方法,使区间的两个端点逐步迫近函数的零点,以求得零点的近似值,这种方法叫做二分法。 从以上可以看出,每次运算后,区间长度减少一半,是线形收敛。另外,二分法不能计算复根和重根。 在计算的过程中,如果判断f(x0)的绝对值小于某一指定的值ε(如ε=0.00001),就可以说x0是此方程的根.
Input
输入有若干行,每行三个float型的数a,b,ε,表示要找的区间(a,b)及精确度ε
Output
如果在(a,b)内找不到根就输出"Can't find it.".否则输出"x=x0",x0为所找的根.
Sample Input
-10 10 0.00001
-10 0 0.00001
2 10 0.0001
Sample Output
x=2.00
Can't find it.
x=2.00
Hint
提交     返回