如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
实验2解非线性方程实验成绩专业班级数学112学号姓名报告日期3月29日.实验类型:●验证性实验○综合性实验○设计性实验实验目的:进一步熟练掌握解非线性方程二分法算法、弦截法算法,提高编程能力和解算非线性方程问题的实践技能。实验内容:用二分法算法、弦截法算法解算非线性方程,,计算=0的根实验原理二分法算法牛顿迭代法弦截法算法实验步骤1要求上机实验前先编写出程序代码2编辑录入程序3调试程序并记录调试过程中出现的问题及修改程序的过程4经反复调试后,运行程序并验证程序运行是否正确。5记录运行时的输入和输出。实验总结实验报告:根据实验情况和结果撰写并递交实验报告。参考程序1.二分法算法解方程①先建立二分法算法程序文件bisect.m,内容如下:function[c,err,yc]=bisect(f,a,b,delta)ya=feval(f,a);yb=feval(f,b);ifya*yb>0,return,endmax1=1+round((log(b-a)-log(delta))/log(2));fork=1:max1c=(a+b)/2;yc=feval(f,c);ifyc==0a=c;b=c;elseifyb*yc>0b=c;yb=yc;elsea=c;ya=yc;endifb-a<delta,break,endendc=(a+b)/2;err=abs(b-a);yc=feval(f,c);②建立的函数文件f.m,内容如下:functionf=f(x);f=x.*x-5;③在commandwindow按如下操作,得结果:>>[c,err,yc]=bisect('f',2,3,0.00001)c=2.2361err=7.6294e-006yc=-1.3714e-005>>[c,err,yc]=bisect('f',-2,-3,0.00001)c=-2.2500err=0.5000yc=0.0625即求得两根近似值。2.弦截法算法①先建立弦截法算法程序文件,内容如下:function[p1,err,k,y]=secant(f,p0,p1,delta,epsilon,max1)fork=1:max1p2=p1-feval(f,p1)*(p1-p0)/(feval(f,p1)-feval(f,p0));err=abs(p2-p1);relerr=2*err/(abs(p2)+delta);p0=p1;p1=p2;y=feval(f,p1);if(err<delta)|(relerr<delta)|(abs(y)<epsilon),break,endend②建立的函数文件f.m,内容如下:functionf=f(x);f=x.*x-5;③在commandwindow按如下操作,得结果:>>[p1,err,k,y]=secant('f',2,3,0.00001,0.00001,10)p1=2.2361err=4.3185e-005k=4y=-2.2882e-007