Create a cell array

1 view (last 30 days)
Cristian
Cristian on 10 May 2014
Answered: Image Analyst on 10 May 2014
How to create a cell arrays consisting of various combinations of letters ABCDE? Letters can be repeated.
  1 Comment
Image Analyst
Image Analyst on 10 May 2014
What about the lengths of the strings? Are 'ABBD' and 'EEECBAABBEEEDDD' both allowed (in different cells of course)? Or so they all have to be 5 characters long, like 'AAAAA' and 'AECCB'?

Sign in to comment.

Answers (2)

Andrei Bobrov
Andrei Bobrov on 10 May 2014
perms('A':'E')

Image Analyst
Image Analyst on 10 May 2014
Try this:
clc;
numberOfCells = 10; % Whatever you want
letters = cell(numberOfCells, 1); % Initialize.
for k = 1 : numberOfCells
% Get random length between 1 and 9
thisLength = randi(9);
% Get all letters from A up to the max allowed.
% Numbers are randomly chosen so that repeats may occur.
m = 64+randi(thisLength, [1, thisLength]);
letters{k} = sprintf('%c', m);
end
% Show the cell array in the command window.
celldisp(letters);
In the command window you'll see:
letters{1} =
DBBAGED
letters{2} =
ABC
letters{3} =
AA
letters{4} =
A
letters{5} =
DBCA
letters{6} =
ADDB
letters{7} =
CDFECCD
letters{8} =
BCCB
letters{9} =
AABB
letters{10} =
FFCBEE

Categories

Find more on Cell Arrays in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!