数值方法方程求根实验报告_第1页
数值方法方程求根实验报告_第2页
数值方法方程求根实验报告_第3页
数值方法方程求根实验报告_第4页
数值方法方程求根实验报告_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、实验概述:1实验目的通过采用迭代法的程序设计,系统的理解和掌握c语言的编程技巧.学会利用c语言进行科学计算,学会查资料和工具书.2实验原理利用构造数列,利用数列的收敛性逐步逼近方程的根来求解3实验环境VisualC+6.0WIN10操作系统二、实验内容:1实验方案1.1用简单迭代法求ex+10x-2=0的方程的根,当满足|Xn+1-Xn|<=10-6时结束迭代,并说明迭代收敛的理由.(1)构造等价方程x=0.2-0.1e:贝UMx)=0.2-0.1ex.(2)给定初值Xo=0,构造迭代公式X+1=0.2-0.1exn.(3)在VC+6.0中编写程序如下并运行:#include<

2、stdio.h>#include<math.h>#defineESP1e-6voidmain()doublex0,x1,b;printf("INPUTx0:");scanf("%lf",&x0);dox1=0.2-0.1*exp(x0);b=x0;x0=x1;while(fabs(x0-b)<=ESP);printf("%fn",x0);1.2用牛顿法求方程x=tgx的最小正根和在x=100附近的根,当满足|Xn+1-Xn|<=10-6时结束迭代.并讨论初值的变化对收敛的影响.(1)对原方程变形为

3、x=arctanX+兀,令f(x)=x-arctanx-2x兀,f(x)=21x2(2)选定初值x0=4.5,构造牛顿迭代公式xn1=xnx-arctanx一九2x1x2(3)在VC+6.0中编写程序如下并运行:#include<stdio.h>#include<math.h>#defineESP1e-6#definePI3.1415926voidmain()doublex0,x1,f,f1,a,b;printf("INPUTx0:");scanf("%lf",&x0);a=floor(x0/PI);dof=x0-atan

4、(x0)-a*PI;f1=x0*x0/(1+x0*x0);x1=x0-f/f1;b=x0;x0=x1;while(fabs(x0-b)<=ESP);printf("%fn",x0);2实验步骤1.1a)程序编译出错:b)找到出错位置:printf(T*iHPUTxor1);scanFCUF'&KO);do-5t1-e.2-O.1*eKpJ,L(xO);x0=x1:while(fjbs(x0-b)<=ESP);printf("Vn",xO);c)修改为"x1=0.2-0.1*exp(x0)后调试运行为:uonfigur

5、ation:歌1R力达宝一双上机-wiimnuenuqLinking.数值方法第一次上机-Ilerror(s),0i*arning(s)调试成功,运行程序得出结果.1.2a)编译运行出错:1 Compiling+I数值方望一次上机"PP、HA散值方法实验由夕值方法第,次上机.c叩(31】:errorC2K5:"atanxQ":undeclaredidentifier加丁cL.e黑'二乐姓桔七it至一注卜如-nhii-1prrnrfi;1.nurninnfb)找到出错位置<,f=xo-atanxo-a*PI;f1-m0*x0/(1+m0*x0);b-x

6、0;x0=x1;while(fabs(x0-b)<-ESP);printfCW'.xO);c)修改为"f=x0-atan(x0)-a*PI;,调试运行.运行得出结果.3实验结论(数据及分析结果)(1)对于方程ex+10x-2=0,输入初值为0时结果如下: 1"H:淡值方法实验Pebug激值方法第一次上机电xdINPUTx0:00.100000Pressanykeytocontinue由于xC(0.1),4'(x)=-0.1ex<1,所以该迭代格式收敛.(2)对于方程x=tgx,输入初值4.5时运行结果如下 1H:徽助法会Debug谨丽法第一虹机总

7、工INPUTx0:4.54.493410Pressanykeytocontinue当输入x为100时:B戚值方法实验激值方法第一次上机上乂目.INPUTx0:10098.950062Pressanykeytocontinue牛顿迭代是局部收敛的,故迭代在方程的根的附近是收敛的,所以初值的选择对牛顿迭代的收敛性有影响,假设初值选在根的附近那么迭代收敛,假设初值选择离根远那么发散.4实验小结收获体会通过这次实验,根本掌握了利用C语言解决数值计算中的方程求根问题,从最初的编写算法到调试再到得出结果,虽然有困难但是通过翻阅资料,查工具书等,最终顺利完成了任务,同时也加深了对于迭代法的熟悉.三、指导教师

8、评语及成绩评语评语等级优良中及格/、及格1.实验报告按时完成,字迹清楚,文字表达流畅,逻辑性强2.实验方案设计合理3.实验过程实验步骤详细,记录完整,数据合理,分析透彻4实验结论正确.成绩:指导教师签名:批阅日期:附录1:源程序1.1#include<stdio.h>#include<math.h>#defineESP1e-6voidmain()doublex0,x1,b;printf("INPUTx0:");scanf("%lf',&x0);do(x1=0.2-0.1*exp(x0);b=x0;x0=x1;)while(f

9、abs(x0-b)<=ESP);printf("%fn",x0);)1.2#include<stdio.h>#include<math.h>#defineESP1e-6#definePI3.1415926voidmain()(doublex0,x1,f,f1,a,b;printf("INPUTx0:");scanf("%lf',&x0);a=floor(x0/PI);do(f=x0-atan(x0)-a*PI;f1=x0*x0/(1+x0*x0);x1=x0-f/f1;b=x0;x0=x1;)whi

10、le(fabs(x0-b)<=ESP);printf("%fn",x0);)附录2:实验报告填写说明1 .实验工程名称:要求与实验教学大纲一致.2 .实验目的:目的要明确,要抓住重点,符合实验教学大纲要求.3 .实验原理:简要说明本实验工程所涉及的理论知识.4 .实验环境:实验用的软、硬件环境.5 .实验方案思路、步骤和方法等:这是实验报告极其重要的内容.概括整个实验过程.对于验证性实验,要写明依据何种原理、操作方法进行实验,要写明需要经过哪几个步骤来实现其操作.对于设计性和综合性实验,在上述内容根底上还应该画出流程图、设计思路和设计方法,再配以相应的文字说明.对于创新性,还应注明

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论