Test  Status  Code Input and Output 

1  Pass 
filetext = fileread('myProd.m');
assert(isempty(strfind(filetext, 'regexp')),'regexp hacks are forbidden')

2  Pass 
filetext = fileread('myProd.m');
assert(isempty(strfind(filetext, 'prod')),'Cannot use prod() function')

3  Pass 
mat = ones(5);
v_correct = ones(1, 5);
assert(isequal(myProd(mat),v_correct))
x =
1
x =
1
x =
1
x =
1
x =
1
v =
1
x =
1
x =
1
x =
1
x =
1
x =
1
x =
1
v =
1 1
x =
1
x =
1
x =
1
x =
1
x =
1
x =
1
v =
1 1 1
x =
1
x =
1
x =
1
x =
1
x =
1
x =
1
v =
1 1 1 1
x =
1
x =
1
x =
1
x =
1
x =
1
x =
1
v =
1 1 1 1 1
x =
1

4  Pass 
mat = [ 1, 2, 3, 4; 5, 6, 7, 2; 2, 3, 4, 5];
v_correct = [10, 36, 84, 40];
assert(isequal(myProd(mat),prod(mat)))
x =
1
x =
5
x =
10
v =
10
x =
1
x =
2
x =
12
x =
36
v =
10 36
x =
1
x =
3
x =
21
x =
84
v =
10 36 84
x =
1
x =
4
x =
8
x =
40
v =
10 36 84 40
x =
1

5  Pass 
m = randi([5,15]);
n = randi([5,15]);
mat = randi(5, n, m);
v_correct = prod(mat);
assert(isequal(myProd(mat),prod(mat)))
x =
1
x =
5
x =
20
x =
80
x =
160
x =
480
v =
480
x =
1
x =
1
x =
4
x =
4
x =
4
x =
4
x =
12
v =
480 12
x =
1
x =
4
x =
4
x =
20
x =
40
x =
200
x =
200
v =
480 12 200
x =
1
x =
1
x =
3
x =
3
x =
3
x =
6
x =
6
v =
480 12 200 6
x =
1
x =
3
x =
3
x =
6
x =
6
x =
6
x =
12
v =
480 12 200 6 12
x =
1
x =
4
x =
12
x =
12
x =
24
x =
24
x =
120
v =
480 12 200 6 12 120
x =
1
x =
1
x =
5
x =
10
x =
20
x =
40
x =
160
v =
480 12 200 6 12 120 160
x =
1
x =
1
x =
4
x =
20
x =
60
x =
180
x =
540
v =
480 12 200 6 12 120 160 540
x =
1
x =
1
x =
4
x =
20
x =
40
x =
200
x =
400
v =
480 12 200 6 12 120 160 540 400
x =
1
x =
1
x =
1
x =
4
x =
8
x =
32
x =
128
v =
480 12 200 6 12 120 160 540 400 128
x =
1

34648 Solvers
321 Solvers
194 Solvers
1454 Solvers
92 Solvers