怎样将循环输出的数据结果放进一个矩阵中 matlab

clcclearx=[18671442170018422092232222522542257214251302521215200202922];E=zeros(1,17)... clc
clear

x=[1867 1442 1700 1842 2092 2322 2252 2542 2572 1425 1302 521 215 20 0 202 922];
E=zeros(1,17);
for i=1:17

if x(:,i)<=300
E(:,i)=20;
elseif x(:,i)<=350
E(:,i)=23;
elseif x(:,i)<=400
E(:,i)=26;
elseif x(:,i)<=450
E(:,i)=29;
elseif x(:,i)<=500
E(:,i)=32;
elseif x(:,i)<=600
E(:,i)=37 ;
elseif x(:,i)<=700
E(:,i)=44;
elseif x(:,i)<=800
E(:,i)=50;
elseif x(:,i)<=900
E(:,i)=55;
elseif x(:,i)<=1000
E(:,i)=60;
elseif x(:,i)>1000
m=ceil((x-1000)/100);
E(:,i)=60+m*5;
end

end
展开
 我来答
DoramiHe
2018-07-27 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25334 获赞数:59537
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
首先做一个空矩阵,用来存你输出的告宴内容

如:
sum = []

然后
举例说明,一下循环为例子:

for i = 1:5
for j = 1:5
%假设每次循环生成矩阵为a(i,j)
sum = horzcat(sum,a(i,j))
%这句就会把每次生成的矩阵a(i,j)横向加入到sum里面
%如果要纵向加,可用vertcat 函数
%也可以用 sum [sum; a(i,j)]的方法来把两个matrix加起来
%要是包括了横向和纵向添加,可以用if根据循环袜和银的情况来自定义如何添加,按照什么次序添加
end
end

最后并为一棚喊个矩阵 sum

常用的矩阵操作函数有:
cat

horzcat

vertcat

repmat

blkdiag
五粒兵
2018-07-27 · TA获得超过854个赞
知道小有建树答主
回答量:869
采纳率:0%
帮助的人:62.4万
展开全部
把E和x里冒号逗号去掉
追问

没有用

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式