Matlab出现的问题

注意:分成1.2.3.级数【项数n分别为3、6、10】求破。。。。我数据都出来了。。就是会出现数据乱排的现象。。求高手破。。求程序。。。... 注意:分成1.2.3.级数【项数n分别为3、6、10】 求破。。。。我数据都出来了。。就是会出现数据乱排的现象。。求高手破。。求程序。。。 展开
 我来答
giantbrain
2013-10-31 · TA获得超过347个赞
知道小有建树答主
回答量:358
采纳率:100%
帮助的人:160万
展开全部

clear

clc


n=[3,6,10];%项数,可以任意加,任意改

m=length(n);

x=(0:0.2:2.0)';%自变量

y=ones(length(x),m);%近似值


for j=1:m

    for i=1:n(j)

        y(:,j)=1+y(:,j).*x/(n(j)+1-i);

    end

end


%显示结果

disp([x,exp(x),y])

%画图

plot(x,y)

hold on

plot(x,exp(x),':k')

legend(strsplit([sprintf('n=%d,',n),'realval'],','),'Location','NorthWest')


运行结果:

         0    1.0000    1.0000    1.0000    1.0000

    0.2000    1.2214    1.2213    1.2214    1.2214

    0.4000    1.4918    1.4907    1.4918    1.4918

    0.6000    1.8221    1.8160    1.8221    1.8221

    0.8000    2.2255    2.2053    2.2255    2.2255

    1.0000    2.7183    2.6667    2.7181    2.7183

    1.2000    3.3201    3.2080    3.3193    3.3201

    1.4000    4.0552    3.8373    4.0527    4.0552

    1.6000    4.9530    4.5627    4.9464    4.9530

    1.8000    6.0496    5.3920    6.0341    6.0496

    2.0000    7.3891    6.3333    7.3556    7.3890

绘制图像:

更多追问追答
追问
请问能不能生成上面我要的表格(就是问题的那个表格。)
然後用subplot,生成三个图像在一起,项数分别是3.6.10三幅图像。
追答
clear
clc

n=[3,6,10];%项数,可以任意加,任意改
m=length(n);%近似曲线的个数
x=(0:0.2:2.0)';%自变量
y=ones(length(x),m);%近似值

col=floor(sqrt(m));% subplot的列数
row=ceil(m/col);% subplot的行数
labels=strsplit(sprintf('n=%d,',n),',');%标签

for j=1:m
for i=1:n(j)
y(:,j)=1+y(:,j).*x/(n(j)+1-i);
end
%画图
subplot(row,col,j)
hold on
plot(x,y(:,j),'color',0.5+0.5*sin(([0,1,-1]+3*j/m)*2/3*pi))%近似曲线
plot(x,exp(x),'--k')%真实曲线
legend({labels{j},'realval'},'Location','NorthWest');%标签
end

%显示结果
fprintf('x\t\t真实值\t')
fprintf('n=%d\t\t',n)
fprintf('\n')
for k=1:length(x)
fprintf('%.3f\t',[x(k),exp(x(k)),y(k,:)])
fprintf('\n')
end
电动炉钩子
2013-10-30 · TA获得超过1569个赞
知道小有建树答主
回答量:614
采纳率:0%
帮助的人:820万
展开全部
x = (0:.2:2)';
n = 0 : 3; %按照要求可以换成0 : 6或者0 : 10
mx = repmat(x,1,length(n));
mn = repmat(n,length(x),1);
xn = mx .^ mn;
fn = factorial(mn);
approx_e = sum(xn./fn,2);
true_e = exp(x);
result = [x true_e approx_e];


这样就可以了。我相信你用这个代码交作业老师同学都跪拜了:)

追问
大神。。。。这个太复杂。。老师还没教到。。。求只用for语句来编。。。求破。。还有一个问题。。。。怎么出不了图像和数据。。。。。。。。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式