Stuck in Indexing of a Matrix(or Cell Array)
2 次查看(过去 30 天)
显示 更早的评论
Hi all,I have just started learning MATLAB . Please find my codes below
m= ['A','B','C'];
cs=size(m,2);
for i=1:cs
for j=1:cs
if i~=j
s1=(m(i));s2=',';s3=(m(j));
s=strcat(s1,s2,s3);
disp(s);
end
end
end
It produces the following output on command window.
* A,B
* A,C
* B,A
* B,C
* C,A
* C,B
But , i want to wrap up all the outputs into a single matrix (or Cell Array ) , Lets say new_M . So that the values of new_M shall contain all the above values like this .
new_M (6,1) =
[ A,B
A,C
B,A
B,C
C,A
C,B ]
Your help will be highly appreciatated . Thanks in advance.
0 个评论
采纳的回答
James Tursa
2015-3-25
编辑:James Tursa
2015-3-25
E.g., using the cell array approach:
m= ['A','B','C'];
cs=size(m,2);
new_M = cell(cs*(cs-1),1); % Pre-allocate your cell array
k = 0; % Initialize counter for cell array
for i=1:cs
for j=1:cs
if i~=j
s1=(m(i));s2=',';s3=(m(j));
s=strcat(s1,s2,s3);
disp(s);
k = k + 1; % Increment cell array counter
new_M(k) = {s}; % Stuff string into cell array element
end
end
end
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!