2011-02-24 68 views
0

如何在MATLAB中循環時在數組中插入字符串?我知道這很簡單,但我得到一個不匹配的錯誤。這裏是示例代碼。如何在MATLAB中循環時在數組中插入字符串?

s={'asd', 'xyzs', 'pqrs','mnopr'};  
for i=1:4 
    w=randint(1,1,[1,2]); 

    switch w 
     case 1 
     word(i)=s(i); 

     otherwise 
     word(i)=3; 
    end 
end 
+0

第一行應該是'S = {「ASD」,「xyzs」,「PQRS」 ,'mnopr'}',不是嗎? – gary 2011-02-24 02:26:38

+0

我很努力地嘗試,但我不明白你的問題......你能澄清一點點嗎? – Simon 2011-02-24 02:32:35

回答

2

您的問題是小號是細胞和沒有。有很多事情可以解決這個問題,但一個簡單的方法是將定義爲大小的單元格。然後,您將不得不將它們插入,這意味着你的代碼看起來像在此之前,以任何數字轉換成細胞:

s={'asd','xyzs','pqrs','mnopr'}; 

word = cell(size(s)); 

for i=1:4 

    w=randint(1,1,[1,2]); 

    switch w 

    case 1: 

     word(i)=s(i); 

    otherwise 

     word(i)= num2cell(3); 

    end 

end 
相關問題