更改循环内变量的名称

时间:2011-07-09 09:26:15

标签: matlab

  

可能重复:
  How to concatenate a number to a variable name in MATLAB?

一定很容易,但我无法在帮助中找到它! 我使用向量x操作10个循环(例如),最后我想在矩阵10by10中连接所有结果。为了做到这一点,我必须将它们命名为x1,x2,x3等。我该怎么做?

编辑:到目前为止我的部分代码(从评论中复制):

x = [0,0,0,1,0,0,1,0];
for k = 1:50 
    if x(1,8) ==1 && x(1,1)==1 && x(1,2)==1
        x(1,1)=0;
    elseif x(1,8) ==1 && x(1,1)==1 && x(1,2)==0
        x(1,1)=0;
    elseif x(1,8) ==1 && x(1,1)==0 && x(1,2)==1
        x(1,1)=0;
    elseif x(1,8) ==1 && x(1,1)==0 && x(1,2)==0
        x(1,1)=1;
    elseif x(1,8) ==0 && x(1,1)==1 && x(1,2)==1
        x(1,1)=1;
    elseif x(1,8) ==0 && x(1,1)==1 && x(1,2)==0
        x(1,1)=1;
    elseif x(1,8) ==0 && x(1,1)==0 && x(1,2)==1
        x(1,1)=1; 
end

...etc...

disp(x)

1 个答案:

答案 0 :(得分:3)

您应该在循环之前预先分配矩阵,并且在循环中只需将向量直接插入列(或行)中。像:

A= zeros(10, 10);
for k in 1: 10
    A(:, k)= %# result of your processing
end