赞
踩
1.利用n阶泰勒多项式展开来估算函数f(x)=e^x在指定点x处的近似值。要求绝对误差在最大阶数MAXN以内达到给定精度EPS。
taylorcal函数:
function taylorcal()
eps=0.00001;
MAXN=20;
x=input('存储输入的浮点数/向量');
f1=zeros(1,length(x));
for j=1:length(x)
xzs=1;
xjc=1;
xsum=1;
accexp=exp(x(j));
for i=1:MAXN
xzs=xzs.*x(j);
xjc=xjc.*i;
xsum=xsum+xzs./xjc;
if abs(xsum-accexp)
f1(j)=xsum;
break
end
f1(j)=-1;
end
end
disp([x' f1'])
end
截图:
2.测试程序,分别查看当x=-6,5时的泰勒展开的前20项的值。(泰勒公式过程分析)
taylorcaltest函数
function taylorcaltest()
eps=0.00001;
MAXN=20;
x=input('存储输入的浮点数/向量');
flp=zeros(1,length(x));
for j=1:length(x)
xzs=1;
xjc=1;
xsum=1;
accexp=exp(x(j));
for i=1:MAXN
xzs=xzs.*x(j);
xjc=xjc.*i;
term(i)=xzs./xjc;
xsum=xsum+xzs./xjc;
flp(i)=xsum;
if abs(xsum-accexp)
fl(j)=xsum;
break
end
fl(j)=-1;
end
end
disp([[1:20],flp,term])
end
截图:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。