Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Solution 86765

Submitted on 8 May 2012 by Bert

Correct

82Size
Leading solution size is 17.
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test
Code Input and Output
1
Pass
 
%%
numOut = 5;
barIn = repmat( [1 1 1 0 0 0 1 0 1 0 0 0 1 1 1],[30,1]);;
assert(isequal(barDecoder(barIn),numOut))
imgBar =
  Columns 1 through 10
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
  Columns 11 through 15
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
     0     0     1     1     1
2
Pass
 
%%
numOut = 12;
barIn = repmat( [1 1 1 0 0 0 1 0 0 0 1 0 1 0 1 1 1],[30,1]);;
assert(isequal(barDecoder(barIn),numOut))
imgBar =
  Columns 1 through 10
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
     1     1     1     0     0     0     1     0     0     0
  Columns 11 through 17
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
     1     0     1     0     1     1     1
3
Pass
 
%%
numOut = 135;
barIn = repmat( [1 1 1 0 0 0 1 0 1 0 1 0 1 0 1 0 0 0 1 0 0 0 1 0 0 0 1 1 1],[30,1]);;
assert(isequal(barDecoder(barIn),numOut))
imgBar =
  Columns 1 through 10
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
  Columns 11 through 20
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
     1     0     1     0     1     0     0     0     1     0
  Columns 21 through 29
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
     0     0     1     0     0     0     1     1     1
4
Pass
 
%%
numOut = 2;
barIn = repmat( [1 1 1 0 0 0 1 0 1 1 1],[30,1]);
assert(isequal(barDecoder(barIn),numOut))
imgBar =
  Columns 1 through 10
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
     1     1     1     0     0     0     1     0     1     1
  Column 11
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
5
Pass
 
%%
numOut = 22;
barIn = repmat( [1 1 1 0 0 0 1 0 1 0 0 0 1 0 0 0 1 0 1 1 1],[30,1]);
assert(isequal(barDecoder(barIn),numOut))
imgBar =
  Columns 1 through 10
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
     1     1     1     0     0     0     1     0     1     0
  Columns 11 through 20
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
     0     0     1     0     0     0     1     0     1     1
  Column 21
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1
     1