解非线性方程y=x^3 +4*x^2-10在区间[1,2]的根,精确到小数点后第三位
hanshu为迭代公式
#include <iostream>
#define WUCHA 0.0005
using namespace std;
double hanshu(double x) {//函数
return x - (x * x * x + 4 * x * x - 10) / ((3 * x * x + 8 * x)-(6*x+8)*(x*x*x+4*x*x-10)/(2*(3 * x * x + 8 * x)));
}
int main()
{
double x = 1.5;
double xx = 10000000;
int count = 0;
while (abs(x - xx) > WUCHA) {
xx = x;
x = hanshu(x);
count++;
}
cout << "结果:" << x << endl;
cout << "迭代次数:" << count;
}