Cody

Problem 2800. arithmetic progression

Solution 1992609

Submitted on 27 Oct 2019
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
nterms = 10; term0 = randi(10); increment = (-1)^randi(2)*randi(10); correctsequence = term0:increment:term0+(nterms-1)*increment; for position = 1:nterms errorsequence = correctsequence; errorsequence(position) = errorsequence(position) + (-1)^randi(2)*randi(50); [errorposition, truesequence] = find_error(errorsequence); assert(errorposition == position && isequal(truesequence, correctsequence), 'failed test 1 at position %d', position); end

l = 2

Error using == Matrix dimensions must agree. Error in find_error (line 3) errorposition=find(errorsequence==setdiff(errorsequence,min(errorsequence):max(errorsequence))) Error in Test1 (line 8) [errorposition, truesequence] = find_error(errorsequence);

2   Fail
nterms = 201; term0 = randi(10); increment = (-1)^randi(2)*randi(10); correctsequence = term0:increment:term0+(nterms-1)*increment; for position = 1:10:nterms errorsequence = correctsequence; errorsequence(position) = errorsequence(position) + (-1)^randi(2)*randi(50); [errorposition, truesequence] = find_error(errorsequence); assert(errorposition == position && isequal(truesequence, correctsequence), 'failed test 2 at position %d', position); end

l = 7

Error using == Matrix dimensions must agree. Error in find_error (line 3) errorposition=find(errorsequence==setdiff(errorsequence,min(errorsequence):max(errorsequence))) Error in Test2 (line 8) [errorposition, truesequence] = find_error(errorsequence);