欢迎来到天天文库
浏览记录
ID:51259051
大小:27.50 KB
页数:2页
时间:2020-03-20
《C语言-用牛顿迭代法和二分法求方程.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、1.用牛顿迭代法求该方程在1.5附近的根:2X^3-4X^2+3X-6=0#include#includedoublefunc(doublex)//函数{return2*x*x*x-4*x*x+3*x-6.0;}doublefunc1(doublex)//导函数{return6*x*x-8*x+3;}doubleroot(doublenum){doublex0,x1;x0=num;if(func1(x0)==0.0)//若通过初值,函数返回值为0 {printf("迭代过程
2、中导数为0!");returnx0;}x1=x0-func(x0)/func1(x0);while((fabs(x1-x0))>1e-6){x0=x1;x1=x0-func(x0)/func1(x0);}printf("该方程在1.5附近的根为:%lf。",x1);returnx1;}main(){root(1.5);}2.用二分法求该方程的根:2X^3-4X^2+3X-6=0#include#includemain(){doublefunc(doublex);dou
3、bleroot(doublea,doubleb);root(-10,10);}doublefunc(doublex)//函数{return2*x*x*x-4*x*x+3*x-6.0;}doubleroot(doublea,doubleb){doublex;x=(a+b)/2;if(func(x)==0.0)//若通过初值,函数返回值x {printf("该方程在-10到10区间内的根为:%lf,",x);returnx;}elsewhile(fabs(func(x))>1e-6){if(func(x)*
4、func(a)>0)a=x;elseb=x;x=(a+b)/2;}printf("该方程在-10到10区间内的根为:%lf。",x);returnx;}
此文档下载收益归作者所有