我试图在矩阵中连接0和1以形成二进制数(作为字符串)。
例如,[1 0 1;0 0 1]
应输出['101';'001']
然而,当尝试此输入时,我得到['1','1']
。为什么呢?
function result = generateBinary(ref_matrix)
[row col] = size(ref_matrix);
result = cell(1,row);
str = '';
for i=1:row
for j = 1:col
n = num2str(ref_matrix(i,j))
str = strcat(str, num2str(ref_matrix(i,j)));
str
result{1,i} = str;
str = '';
end
end
end
答案 0 :(得分:1)
第一个end
位于错误的位置。
function result = generateBinary(ref_matrix)
[row col] = size(ref_matrix);
result = cell(1,row);
str = '';
for i=1:row
for j = 1:col
n = num2str(ref_matrix(i,j))
str = strcat(str, num2str(ref_matrix(i,j)));
str
end
result{1,i} = str;
str = '';
end
正如缩进所暗示的,result{1,i} = str;str = '';
可能不是内循环的一部分。