Cody

# Problem 859. Get the elements of diagonal and antidiagonal for any m-by-n matrix

Solution 2775352

Submitted on 4 Aug 2020
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 = [10 20 30; 40 50 60; 70 80 90]; diag_correct = [10 50 90]; antidiag_correct = [ 70 50 30]; [A,B]= your_fcn_name(x); assert(isequal(A,diag_correct)) assert(isequal(B,antidiag_correct))

sz2 = 3 sz1 = 3 nu = 9 dg_elements = 10 antidg_elements = 70 n = 1 dg_elements = 10 50 antidg_elements = 70 50 n = 2 dg_elements = 10 50 90 antidg_elements = 70 50 30 n = 3

2   Fail
x = [10 20 30; 40 50 60 ; 70 80 90; 100 74 15]; diag_corrct78 = [10 50 90]; antidiag_corrct78 = [ 100 80 60]; [A3,B3]= your_fcn_name(x); assert(isequal(A3,diag_corrct78)) assert(isequal(B3,antidiag_corrct78))

sz2 = 3 sz1 = 4 nu = 12 dg_elements = 10 antidg_elements = 100 n = 1 dg_elements = 10 50 antidg_elements = 100 80 n = 2 dg_elements = 10 50 90 antidg_elements = 100 80 60 n = 3

Index exceeds the number of array elements (12). Error in your_fcn_name (line 9) dg_elements=[dg_elements x(1+n*(sz1+1))] Error in Test2 (line 4) [A3,B3]= your_fcn_name(x);

3   Pass
x = [10 20 30 58; 40 50 60 68 ; 70 80 90 98]; diag_correct7 = [10 50 90]; antidiag_correct7 = [ 70 50 30]; [A3,B3]= your_fcn_name(x); assert(isequal(A3,diag_correct7)) assert(isequal(B3,antidiag_correct7))

sz2 = 4 sz1 = 3 nu = 12 dg_elements = 10 antidg_elements = 70 n = 1 dg_elements = 10 50 antidg_elements = 70 50 n = 2 dg_elements = 10 50 90 antidg_elements = 70 50 30 n = 3

4   Fail
t = [0 0 0; 1 0 0 ; 0 2 0; 0 0 3]; diag8 = [0 0 0]; antid7 = [ 0 2 0]; [A3,B3]= your_fcn_name(t); assert(isequal(A3,diag8)) assert(isequal(B3,antid7)) % m-by-n matrix where m <= n (5) t = [0 1 0 0; 0 0 2 0 ; 0 0 0 3]; diag8 = [0 0 0]; antid7 = [ 0 0 0]; [A3,B3]= your_fcn_name(t); assert(isequal(A3,diag8)) assert(isequal(B3,antid7))

sz2 = 3 sz1 = 4 nu = 12 dg_elements = 0 antidg_elements = 0 n = 1 dg_elements = 0 0 antidg_elements = 0 2 n = 2 dg_elements = 0 0 0 antidg_elements = 0 2 0 n = 3

Index exceeds the number of array elements (12). Error in your_fcn_name (line 9) dg_elements=[dg_elements x(1+n*(sz1+1))] Error in Test4 (line 4) [A3,B3]= your_fcn_name(t);