how to creat cell array
8 次查看(过去 30 天)
显示 更早的评论
how to creat function which will have an input integer n. if n positive it will create and return a cell array with strings of random characters of increasing lengths from 1 to n
for example
functionname(4)
ans=
'z' 'zf' 'zfk' 'zfke'
and if it negative it will decreasing
many thanks
0 个评论
采纳的回答
Adam Danz
2018-11-23
编辑:Adam Danz
2018-11-23
Your example only includes lower case so this code does as well.
function randLetters = myfunc(integer)
letters = 'a' : 'z';
rnum = randi(length(letters), 1, abs(integer));
randLetters = cell(1, abs(integer));
for i = 1:abs(integer)
randLetters{i} = letters(rnum(1:i));
end
if integer < 0
randLetters = fliplr(randLetters);
end
Example
myfunc(8)
ans =
1×8 cell array
{'r'} {'rw'} {'rwf'} {'rwfh'} {'rwfht'} {'rwfhtb'} {'rwfhtbt'} {'rwfhtbta'}
myfunc(-4)
ans =
1×4 cell array
{'whke'} {'whk'} {'wh'} {'w'}
4 个评论
Adam Danz
2018-11-25
编辑:Adam Danz
2018-11-25
I just tried it again and it works with negative and positive inputs. Try copying my version of the code again and replacing whatever code you have. After I published my answer I updated it minutes later with a correction. Maybe you are working with the verion that doesn't have the correction.
If you wrote a personal message I probably didn't get it since I don't take PMs. But I'd be glad to help you here.
Also, you should edit your question and add in the example you removed so your question is complete and understood by others who read it.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Cell Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!