C++编写程序用牛顿迭代法求一元方程5x^3—3x^2+2x—8=0 在x=1.1附近的根要求的精
C++编写程序用牛顿迭代法求一元方程5x^3—3x^2+2x—8=0在x=1.1附近的根要求的精度为10的负六次方这道题怎么编写程序...
C++编写程序用牛顿迭代法求一元方程5x^3—3x^2+2x—8=0
在x=1.1附近的根要求的精度为10的负六次方这道题怎么编写程序 展开
在x=1.1附近的根要求的精度为10的负六次方这道题怎么编写程序 展开
3个回答
展开全部
#include "iostream"
#include "math.h"
using namespace std;
typedef double (*func) (double);
double y(double x){
return ((5*x-3)*x+2)*x-8;
}
double dy(double x) {
return (15*x-6)*x+2;
}
double newton(double x, func fy, func fdy) {
double x0;
do {
x0 = x;
if (fabs(fdy(x)) < 1e-100) break;
x = x - fy(x)/fdy(x);
cout << fy(x) << " " << x << endl;
} while (fabs(x-x0) > 1e-6);
return x0;
}
int main() {
cout << newton(1.1, y, dy);
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
嘎嘎
追答
我写过类似的啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询