在 Matlab 中使用 'for' 循环生成字母
Generating letters using 'for' loop in Matlab
我必须生成 80 个随机的英文字母(大写字母)并使用 'for' 循环将它们显示在一行中,每行 10 个字母。我得到一个错误,因为限制是 26。我要在代码中更改什么?
alfabet = 'A' : 'Z';
for i = 1 : 80
temp = alfabet(i);
swop = floor(rand *26 + 1);
alfabet(i) = alfabet(swop);
alfabet(swop) = temp;
end
for i = 1 : 10 : 80
disp(alfabet(i : i + 9))
end
实际上它可能是 one-liner:
disp((char('A'+randi(26,8,10)-1)));
当然你可以用“for”来分割它:
alfabet=char('A'+randi(26,1,80)-1);
for i = 1 : 10 : 80
disp(alfabet(i : i + 9))
end
如果出于某种原因您必须对随机字母使用“for”:
for i=1:80
alphabet(i)=char('A'+randi(26)-1);
end
坦白说,我觉得这部分没有吸引力。
我必须生成 80 个随机的英文字母(大写字母)并使用 'for' 循环将它们显示在一行中,每行 10 个字母。我得到一个错误,因为限制是 26。我要在代码中更改什么?
alfabet = 'A' : 'Z';
for i = 1 : 80
temp = alfabet(i);
swop = floor(rand *26 + 1);
alfabet(i) = alfabet(swop);
alfabet(swop) = temp;
end
for i = 1 : 10 : 80
disp(alfabet(i : i + 9))
end
实际上它可能是 one-liner:
disp((char('A'+randi(26,8,10)-1)));
当然你可以用“for”来分割它:
alfabet=char('A'+randi(26,1,80)-1);
for i = 1 : 10 : 80
disp(alfabet(i : i + 9))
end
如果出于某种原因您必须对随机字母使用“for”:
for i=1:80
alphabet(i)=char('A'+randi(26)-1);
end
坦白说,我觉得这部分没有吸引力。