matlab迭代法代码

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1、%用不动点迭代法求方程x-e^x+4=0的正根与负根,误差限是10^-6%disp('不动点迭代法');n0=100;p0=-5;fori=1:n0p=exp(p0)-4;ifabs(p-p0)=10^(-6)ifp0disp('|p-p0|=')disp(abs(p-p0))disp('不动点迭代法求得方程的负根为:')disp(p);break;elsedisp('不动点迭代法无法求出方程的负根.')endelsep0=p;endendifi==n0disp(n0)disp('次不动点迭代后无法求出方程的负根')endp1=1.7;fori=1:n0pp=exp(p1)-4;ifabs(pp-p1)=10^(-6)ifpp0disp('|p-p1|=')disp(abs(pp-p1))disp('用不动点迭代法求得方程的正根为')disp(pp);elsedisp('用不动点迭代法无法求出方程的正根');endbreak;elsep1=pp;endendifi==n0disp(n0)disp('次不动点迭代后无法求出方程的正根')end2、%用牛顿法求方程x-e^x+4=0的正根与负根,误差限是10^-6disp('牛顿法')n0=80;p0=1;fori=1:n0p=p0-(p0-exp(p0)+4)/(1-exp(p0));ifabs(p-p0)=10^(-6)disp('|p-p0|=')disp(abs(p-p0))disp('用牛顿法求得方程的正根为')disp(p);break;elsep0=p;endendifi==n0disp(n0)disp('次牛顿迭代后无法求出方程的解')endp1=-3;fori=1:n0p=p1-(p1-exp(p1)+4)/(1-exp(p1));ifabs(p-p1)=10^(-6)disp('|p-p1|=')disp(abs(p-p1))disp('用牛顿法求得方程的负根为')disp(p);break;elsep1=p;endendifi==n0disp(n0)disp('次牛顿迭代后无法求出方程的解')end

1 / 2
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功