Cody

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

Solution 118788

Submitted on 25 Jul 2012 by James
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
% no diag filetext = fileread('your_fcn_name.m'); assert(isempty(strfind(filetext, 'diag')))

2   Pass
%% square m-by-m matrix (1) 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))

3   Pass
%% m-by-n matrix where m >= n (2) 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))

4   Pass
%% m-by-n matrix where m <= n (3) 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))

5   Pass
%% m-by-n matrix where m >= n (4) 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))

### Community Treasure Hunt

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

Start Hunting!