Cody

Problem 2801. geometric progression

Solution 2161058

Submitted on 15 Mar 2020 by Asif Newaz
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
nterms = 10; term0 = randi(10) ratio = (-1)^randi(2)*randi(10) correctsequence = term0*ratio.^(0:nterms-1); 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

term0 = 10 ratio = 7 er = 10 70 490 3430 24010 168070 1176490 8235430 57648010 403536070 er = 10 70 490 3430 24010 168070 1176490 8235430 57648010 403536070 er = 10 70 490 3430 24010 168070 1176490 8235430 57648010 403536070 er = 10 70 490 3430 24010 168070 1176490 8235430 57648010 403536070 er = 10 70 490 3430 24010 168070 1176490 8235430 57648010 403536070 er = 10 70 490 3430 24010 168070 1176490 8235430 57648010 403536070 er = 10 70 490 3430 24010 168070 1176490 8235430 57648010 403536070 er = 10 70 490 3430 24010 168070 1176490 8235430 57648010 403536070 er = 10 70 490 3430 24010 168070 1176490 8235430 57648010 403536070 er = 10 70 490 3430 24010 168070 1176490 8235430 57648010 403536070

2   Pass
nterms = 15; term0 = randi(10) ratio = (-1)^randi(2)*randi(10) correctsequence = term0*ratio.^(0:nterms-1); 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 2 at position %d', position); end

term0 = 10 ratio = 5 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035 er = 1.0e+10 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0020 0.0098 0.0488 0.2441 1.2207 6.1035

Suggested Problems

More from this Author9

Community Treasure Hunt

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

Start Hunting!