how to creat cell array

8 visualizzazioni (ultimi 30 giorni)
Dezdi
Dezdi il 23 Nov 2018
Modificato: Rena Berman il 26 Nov 2018
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

Risposta accettata

Adam Danz
Adam Danz il 23 Nov 2018
Modificato: Adam Danz il 23 Nov 2018
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 Commenti
Dezdi
Dezdi il 25 Nov 2018
it said
1X4 cell array
{0x0 double} {0x0 double} {0x0 double} {0x0 double}
I write you message as well here did you get it.
Adam Danz
Adam Danz il 25 Nov 2018
Modificato: Adam Danz il 25 Nov 2018
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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Cell Arrays in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by