题目:
用二分法求方程2x^3-4x^2+3x-6=0在(-10, 10)之间的根。
**输入格式要求:"%f,%f" 提示信息:"请输入x1,x2的值:"
**输出格式要求:"方程的根=%6.2f\n"
程序的运行示例如下:
请输入x1,x2的值:-10,10
方程的根= 2.00
代码如下:
#include <stdio.h>
#include <math.h>
#define N 1e-5
int main()
{
float x0, x1, x2, f0, f1, f2;
do
{
printf("请输入x1,x2的值:");
scanf("%f,%f", &x1, &x2);
f1 = x1 * ((2 * x1 - 4) * x1 + 3) - 6;
f2 = x2 * ((2 * x2 - 4) * x2 + 3) - 6;
}
while (f1 * f2 > 0);
do
{
x0 = (x1 + x2) / 2;
f0 = x0 * ((2 * x0 - 4) * x0 + 3) - 6;
if (f0 * f1 < 0)
{
x2 = x0;
}
else
{
x1 = x0;
}
}
while (fabs(f0) >= N);
printf("方程的根=%6.2f\n", x0);
return 0;
}