数值分析报告-二分法和牛顿法方程求根

数值分析报告-二分法和牛顿法方程求根

ID:16025474

大小:434.00 KB

页数:12页

时间:2018-08-07

数值分析报告-二分法和牛顿法方程求根_第1页
数值分析报告-二分法和牛顿法方程求根_第2页
数值分析报告-二分法和牛顿法方程求根_第3页
数值分析报告-二分法和牛顿法方程求根_第4页
数值分析报告-二分法和牛顿法方程求根_第5页
资源描述:

《数值分析报告-二分法和牛顿法方程求根》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《数值分析》实验报告一姓名:周举学号:PB0900104612实验一一、实验名称方程求根二、实验目的与要求:通过对二分法和牛顿法作编程练习和上机运算,进一步体会它们在方程求根中的不同特点;比较二者的计算速度和计算精度。三、实验内容:通过对二分法和牛顿迭代法作编程练习和上机运算,进一步体会它们在方程求根中的不同特点。(一)二分法算法:给定区间[a,b],并设f(a)与f(b)符号相反,取为根的容许误差,为值的容许误差。(1)令c=(a+b)/2(2)如果(c-a)<或<,则输出c,结束;否则执行(3)(3)如果f(a)f(c)<0,则令;否则,则令

2、,重复(1),(2),(3)。(二)牛顿迭代法:给定初值,为根的容许误差,为的容许误差,N为迭代次数的容许值。(1)如果<或迭代次数大于N,则算法结束;否则执行(2)。12(2)计算(3)若<或<,则输出,程序结束;否则执行(4)。(4)令=,转向(1)。四、实验题目与程序设计1、二分法3.1.1、用二分法求方程a.f(x)=在区间[0,/2]上的根,c.f(x)=在区间[1,3]上的根。源程序:3.1.1.a#include#includevoidmain(){floata,b;doublec,y,z;prin

3、tf("pleseinputtwonumberaandb:");scanf("%f%f",&a,&b);c=(a+b)/2;y=1/c-tan(c);printf("a=%f,b=%f,b-a=%f,c=%f,f(c)=%f",a,b,b-a,c,y);while(fabs(b-a)>0.00001

4、

5、fabs(y)>0.00001){z=1/a-tan(a);if(z*y<0)b=c;elsea=c;c=(a+b)/2;y=1/c-tan(c);printf("a=%f,b=%f,b-a=%f,c=%f,f(c)=%f",a,b,b

6、-a,c,y);}}12输入01.5707563(/2~1.5705563)得到下表:由上表可以看出刚开始时f(c)取值幅度很大,但是经过一段历程之后,幅度变得平缓甚至基本接近与零,我们认为,x=0.8603是方程的根,结果与实际想要得到的值相当接近。3.1.1c#include#includevoidmain(){floata,b;doublec,y,z;printf("pleseinputtwonumberaandb:");scanf("%f%f",&a,&b);c=(a+b)/2;y=pow(2,-c)

7、+exp(c)+2*cos(c)-6;printf("a=%f,b=%f,b-a=%f,c=%f,f(c)=%f",a,b,b-a,c,y);while(fabs(b-a)>0.00001

8、

9、fabs(y)>0.00001){z=pow(2,-a)+exp(a)+2*cos(a)-6;if(z*y<0)b=c;elsea=c;c=(a+b)/2;y=pow(2,-c)+exp(c)+2*cos(c)-6;printf("a=%f,b=%f,b-a=%f,c=%f,f(c)=%f",a,b,b-a,c,y);12}}输入13,得到如下表:我

10、们认为,x=1.8294是方程的根。3.1.4、用二分法求方程在[5.5,6.5]上的根,将-36改为-36.001,并重复试验。源程序如下:#include#includevoidmain(){floata,b,c,y,z,w;intn=0;printf("pleseinputtwonumberaandb:");scanf("%f%f",&a,&b);c=(a+b)/2;y=pow(c,8)-36*pow(c,7)+546*pow(c,6)-4536*pow(c,5)+22449*pow(c,4)-6728

11、4*pow(c,3)+118124*c*c-109584*c+40320;printf("abb-acf(a)f(c)f(b)");printf("%f,%f,%f,%f,%f,%f,%f",a,b,b-a,c,z,y,w);while(y>0.00001

12、

13、c-a>0.00001){12z=pow(a,8)-36*pow(a,7)+546*pow(a,6)-4536*pow(a,5)+22449*pow(a,4)-67284*pow(a,3)+118124*a*a-109584*a+40320;w=pow(b,8)-36*pow(b,7

14、)+546*pow(b,6)-4536*pow(b,5)+22449*pow(b,4)-67284*pow(b,3)+118124*b*

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。