matlab编x^3-3x-1=0在2附近的根 要求用牛顿迭代法
3个回答
展开全部
源程序如下:
clear
clc
N=100;
x=2;
for
ii=0:N
xl=x;
num=ii;
x=x-(x^3-3*x+1)/(3*x^2-3);
if
abs(x-xl)<=0.0001%此为迭代结果精度,可调。
break
end
end
fprintf('答案:x=%f\n',x)
fprintf('迭代次数:%f\n',num)
运行结果:
答案:x=1.532089
迭代次数:4.000000
clear
clc
N=100;
x=2;
for
ii=0:N
xl=x;
num=ii;
x=x-(x^3-3*x+1)/(3*x^2-3);
if
abs(x-xl)<=0.0001%此为迭代结果精度,可调。
break
end
end
fprintf('答案:x=%f\n',x)
fprintf('迭代次数:%f\n',num)
运行结果:
答案:x=1.532089
迭代次数:4.000000
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
clear
clc
f=@(x)x^3-3*x-1;
df=@(x)3*x^2-3;
x=2;
for n=1:100
y=x;
x=x-f(x)/df(x);
if abs(x-y)<1e-6
break
end
end
n
x
clc
f=@(x)x^3-3*x-1;
df=@(x)3*x^2-3;
x=2;
for n=1:100
y=x;
x=x-f(x)/df(x);
if abs(x-y)<1e-6
break
end
end
n
x
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询