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 253396

Submitted on 3 Jun 2013 by Tim

Correct

38Size
Leading solution size is 11.
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
 
%%
x = 0;
y_correct = 1;
y_correct(1) = [];
assert(isequal(gray_code(x),y_correct)&isequal(class(gray_code(x)),'double'))

                    
2
Pass
 
%%
x = 1;
y_correct = [0;1];
assert(isequal(gray_code(x),y_correct)&isequal(class(gray_code(x)),'double'))

                    
3
Pass
 
%%
x = 2;
y_correct = [0 0;0 1;1 1;1 0];
assert(isequal(gray_code(x),y_correct)&isequal(class(gray_code(x)),'double'))

                    
4
Pass
 
%%
x = 5;
y_correct = [0 0 0 0 0;0 0 0 0 1;0 0 0 1 1;0 0 0 1 0;0 0 1 1 0;0 0 1 1 1
0 0 1 0 1;0 0 1 0 0;0 1 1 0 0;0 1 1 0 1;0 1 1 1 1;0 1 1 1 0;0 1 0 1 0
0 1 0 1 1;0 1 0 0 1;0 1 0 0 0;1 1 0 0 0;1 1 0 0 1;1 1 0 1 1;1 1 0 1 0
1 1 1 1 0;1 1 1 1 1;1 1 1 0 1;1 1 1 0 0;1 0 1 0 0;1 0 1 0 1;1 0 1 1 1
1 0 1 1 0;1 0 0 1 0;1 0 0 1 1;1 0 0 0 1;1 0 0 0 0];
assert(isequal(gray_code(x),y_correct)&isequal(class(gray_code(x)),'double'))