非线性方程求根
大道殊同
野生程序员
展开
-
二分
/*f(x)=x^3-2x-5*/ #include<stdio.h>#include<math.h>#define e 1e-5 //精度 double f(double x){ double ans; ans=x*x*x-2*x-5; return ans; } int main(){ double a,b; int i; doub原创 2017-04-20 17:43:58 · 191 阅读 · 0 评论 -
牛顿迭代
/*f(x)=cosx+sinx-4x*/#include<stdio.h>#include<math.h>#define e 10e-5double PF(double x)//原函数{ double ans; ans=cos(x)+sin(x)-4*x; return ans;}double DF(double x)//导函数{ double an原创 2017-04-20 17:36:34 · 385 阅读 · 0 评论 -
简单迭代
/*f(x)=(3x+1)^(1/3)*/ #include<stdio.h> #include<math.h> #define e 1e-5 double f(double x0) { double x=x0; return pow((3*x+1),1.0/3.0); } int main() { double x0=1.5,x原创 2017-04-20 17:46:27 · 592 阅读 · 0 评论 -
史蒂芬森加速迭代
迭代公式:/*史蒂芬森加速迭代*//*f(x)=(x^3-1)/3*/#include#includedouble f(double x){ return (x*x*x-1)/3.0;}int main(){ double x0,x1,x2,xk,xk0,e,ans; x0=1.5;e=0.0001; do { x1=f(x0);x2=f(x1); xk=原创 2017-03-27 09:03:08 · 3456 阅读 · 0 评论