|p
n
− p
n−1
| < 𝜀
本题中所有ε取 1e-6。
(四)程序
注:n 表示迭代步数。
第一题(1)首先根据题目要求对方程进行构造,得到的方程为:
y = x
3
+ 2x − 0.205061208。
Newton 法求解算法
建立 newton1.m 源程序,源程序代码为:
function x=newton1(fn,dfn,x0,e)
if nargin<4,e=1e-4;end
x=x0;x0=x+2*e;
while abs(x0-x)>e
x0=x;
x=x0-feval(fn,x0)/feval(dfn,x0);
end
在 matlab 软件中执行下列语句并得到最终结果截图
>> clear
>> fun=inline('x^3+2*x-0.205061208');
>> dfun=inline('3*x^2+2');format long;
>> newton1(fun,dfun,0.5,1e-6),format short
并得到最终结果
n =