Cody

Solution 2026621

Submitted on 18 Nov 2019 at 16:31
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   Fail
x1=magic(5); x2=3; x3=9; [R1,C1]=RCMatrixIndices(x1,x2,x3); [fr1,fc1]=find(and(x1>=x2,x1<x3)); assert(and(isequal(R1,fr1),isequal(C1,fc1)))

y = 3 y = 3 7 y = 3 7 8 y = 3 7 8 12 y = 3 7 8 12 16 rowidx = 3 2 3 2 1 colidx = 1 2 2 3 4

Assertion failed.

2   Pass
filetext = fileread('RCMatrixIndices.m'); assert(isempty(strfind(filetext, 'find')))

3   Pass
filetext = fileread('RCMatrixIndices.m'); assert(isempty(strfind(filetext, 'regexp')))

4   Fail
x1=magic(5); x2=3; x3=9; [R2,C2]=RCMatrixIndices(x2,x1, x3); [fr1,fc1]=find(and(x1>=x2,x1<x3)); assert(and(isequal(R2,fr1),isequal(C2,fc1)))

rowidx = [] colidx = []

Assertion failed.

5   Fail
x1=magic(5); x2=3; x3=9; [R3,C3]=RCMatrixIndices(x1,x3,x2); [fr1,fc1]=find(and(x1>=x2,x1<x3)); assert(and(isequal(R3,fr1),isequal(C3,fc1)))

rowidx = [] colidx = []

Assertion failed.

6   Fail
A=... [3 3 3 3;... 8 3 3 3;... 8 8 3 3;... 8 8 8 3]; lowlim=3; uplim=9; [R4,C4]=RCMatrixIndices(A,uplim,lowlim); assert(length(A(4*(C4-1)+R4))==16)

rowidx = [] colidx = []

Assertion failed.

7   Pass
A=... [3 3 3 3;... 8 3 3 3;... 8 8 3 3;... 8 8 8 3]; lowlim=4; uplim=9; %extract only 8 [R5,C5]=RCMatrixIndices(A,uplim,lowlim); assert(all(A(4*(C5-1)+R5)==8))

rowidx = [] colidx = []

8   Pass
A=... [3 3 3 3;... 8 3 3 3;... 8 8 3 3;... 8 8 8 3]; lowlim=4; uplim=7; [R6,C6]=RCMatrixIndices(A,uplim,lowlim); assert(and(isempty(R6),isempty(C6)))

rowidx = [] colidx = []

9   Fail
A=... [3 3 3 3;... 8 3 3 3;... 8 8 3 3;... 8 8 8 3]; lowlim=2; uplim=7; [R7,C7]=RCMatrixIndices(A,uplim,lowlim); assert(and(all(A(4*(C7-1)+R7)==3),length(R7==10)))

rowidx = [] colidx = []

Assertion failed.

10   Pass
A=1; lowlim=1; uplim=1; [R8,C8]=RCMatrixIndices(A,uplim,lowlim); assert(and(isempty(R8),isempty(C8)))

rowidx = [] colidx = []

11   Fail
A=1; lowlim=1; uplim=2; [R9,C9]=RCMatrixIndices(A,uplim,lowlim); assert(and(R9==1,C9==1))

rowidx = [] colidx = []

Error using assert The condition input argument must be a scalar logical. Error in Test11 (line 5) assert(and(R9==1,C9==1))