Cody

Problem 44492. Approximate the cosine function

Solution 2422043

Submitted on 30 May 2020 by jony hait
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
filetext = fileread('myCos.m'); assert(isempty(strfind(filetext, 'regexp')),'regexp hacks are forbidden')

2   Pass
filetext = fileread('myCos.m'); trigUsed = any(strfind(filetext, 'cos')) || any(strfind(filetext, 'sin')) ||... any(strfind(filetext, 'exp')); assert(~trigUsed, 'Cannot use MATLAB trigonometric functions')

3   Pass
x = 0; assert(abs(myCos(x)-cos(x)) < 0.0001)

y = 1 k = 1 z = 0

4   Pass
x = pi; assert(abs(myCos(x)-cos(x)) < 0.0001)

y = 1 k = 1 z = -4.9348 y = -3.9348 k = 2 z = 4.0587 y = 0.1239 k = 3 z = -1.3353 y = -1.2114 k = 4 z = 0.2353 y = -0.9760 k = 5 z = -0.0258 y = -1.0018 k = 6 z = 0.0019 y = -0.9999 k = 7 z = -1.0464e-04 y = -1.0000 k = 8 z = 4.3031e-06

5   Pass
x = pi/2; assert(abs(myCos(x)-cos(x)) < 0.0001)

y = 1 k = 1 z = -1.2337 y = -0.2337 k = 2 z = 0.2537 y = 0.0200 k = 3 z = -0.0209 y = -8.9452e-04 k = 4 z = 9.1926e-04 y = 2.4737e-05 k = 5 z = -2.5202e-05

6   Pass
x = 5*pi/3; assert(abs(myCos(x)-cos(x)) < 0.0001)

y = 1 k = 1 z = -13.7078 y = -12.7078 k = 2 z = 31.3172 y = 18.6094 k = 3 z = -28.6193 y = -10.0099 k = 4 z = 14.0110 y = 4.0011 k = 5 z = -4.2680 y = -0.2669 k = 6 z = 0.8864 y = 0.6195 k = 7 z = -0.1335 y = 0.4860 k = 8 z = 0.0153 y = 0.5013 k = 9 z = -0.0014 y = 0.4999 k = 10 z = 9.8593e-05

Suggested Problems

More from this Author25

Community Treasure Hunt

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

Start Hunting!