Cody

Problem 2587. Find indices of diagonal elements

Solution 1122054

Submitted on 13 Feb 2017 by Jihye Sofia Seo
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 2 3;4 5 6;7 8 9]; a = [1 5 9]; assert(isequal(diag_indices(x,0),a))

R = 3 C = 3

2   Pass
x = magic(5); b = 5; assert(isequal(diag_indices(x,-4),b))

R = 5 C = 5

3   Pass
x = magic(5); a = 21; assert(isequal(diag_indices(x,4),a))

R = 5 C = 5

4   Pass
x = magic(5); z = 5; assert(isequal(diag_indices(x,-4),z))

R = 5 C = 5

5   Pass
x = magic(6); a = [19 26 33]; assert(isequal(diag_indices(x,3),a))

R = 6 C = 6

6   Pass
x1 = magic(50); y_correct = 50; assert(isequal(diag_indices(x1,-49),y_correct))

R = 50 C = 50

7   Pass
x2 = magic(50); y_correct = [49 100]; assert(isequal(diag_indices(x2,-48),y_correct))

R = 50 C = 50

8   Pass
y = magic(50); v = [48 99 150]; assert(isequal(diag_indices(y,-47),v))

R = 50 C = 50

9   Pass
v=[1 2 3;4 5 6;1 2 3]; t = [1 5 9]; assert(isequal(diag_indices(v,0),t))

R = 3 C = 3

10   Pass
x=[1 2;1 2]; y_correct = 3; assert(isequal(diag_indices(x,1),y_correct))

R = 2 C = 2

11   Pass
x=[1 1 1;1 1 1;1 1 1]; t = [1 5 9]; assert(isequal(diag_indices(x,0),t))

R = 3 C = 3

12   Pass
y=[1 2 3;1 2 3]; y_correct = [1 4]; assert(isequal(diag_indices(y,0),y_correct))

R = 2 C = 3

Suggested Problems

More from this Author43

Community Treasure Hunt

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

Start Hunting!