Cody

# Problem 44814. Find the complement of a number in binary

Solution 1742207

Submitted on 4 Mar 2019
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
x = 1; y_correct = [ 1 1 1 1 1 1 1 0]; assert(isequal(find_comp(x),y_correct))

x = '1' ra = 0 0 0 0 0 0 0 0 d = 8 ra = 0 0 0 0 0 0 0 1 d = 7 y = 1×8 logical array 1 1 1 1 1 1 1 0

2   Pass
x = 67; y_correct = [1 0 1 1 1 1 0 0]; assert(isequal(find_comp(x),y_correct))

x = '1000011' ra = 0 0 0 0 0 0 0 0 d = 8 ra = 0 0 0 0 0 0 0 1 d = 7 ra = 0 0 0 0 0 0 1 1 d = 6 ra = 0 0 0 0 0 0 1 1 d = 5 ra = 0 0 0 0 0 0 1 1 d = 4 ra = 0 0 0 0 0 0 1 1 d = 3 ra = 0 0 0 0 0 0 1 1 d = 2 ra = 0 1 0 0 0 0 1 1 d = 1 y = 1×8 logical array 1 0 1 1 1 1 0 0

3   Pass
x = 114; y_correct = [ 1 0 0 0 1 1 0 1]; assert(isequal(find_comp(x),y_correct))

x = '1110010' ra = 0 0 0 0 0 0 0 0 d = 8 ra = 0 0 0 0 0 0 0 0 d = 7 ra = 0 0 0 0 0 0 1 0 d = 6 ra = 0 0 0 0 0 0 1 0 d = 5 ra = 0 0 0 0 0 0 1 0 d = 4 ra = 0 0 0 1 0 0 1 0 d = 3 ra = 0 0 1 1 0 0 1 0 d = 2 ra = 0 1 1 1 0 0 1 0 d = 1 y = 1×8 logical array 1 0 0 0 1 1 0 1

4   Fail
x = -16; y_correct = [0 0 0 0 1 1 1 1]; assert(isequal(find_comp(x), y_correct))

Error using dec2bin (line 33) D must be a non-negative integer smaller than flintmax. Error in find_comp (line 2) x = dec2bin(x) Error in Test4 (line 3) assert(isequal(find_comp(x), y_correct))

5   Fail
x = -45; y_correct = [0 0 1 0 1 1 0 0]; assert(isequal(find_comp(x), y_correct))

Error using dec2bin (line 33) D must be a non-negative integer smaller than flintmax. Error in find_comp (line 2) x = dec2bin(x) Error in Test5 (line 3) assert(isequal(find_comp(x), y_correct))