# A05.m - Taylor Series Expansion (using a for loop)

% get info from user fprintf('Taylor series of cos(x) \n'); N = input('Enter the number of terms in the expansion: '); x = input('Enter the value of x to evaluate the function: '); % Taylor series of cos(x) approx = 0; for n=0:N-1 approx = approx + (-1)^n * x^(2*n) / factorial(2*n); end % Display the Taylor approximation and the resulting error to the command % window fprintf('\n') fprintf('Taylor series approximation = %.7g \n',approx) fprintf('actual value = %.7g \n',cos(x)); fprintf('error = %.3g \n',approx-cos(x));

The program approximates the function `cos(x)` using a Taylor series approximation. It first prompts the user to enter the number of terms in the Taylor series and the value of `x`.

The variable `approx` stores the Taylor series approximation. This variable is first initialized to 0. The for loop is used to calculate the successive terms in the expansion. Notice that the Matlab function `factorial()` is used to calculate the factorial of `2n` in the expansion. The final result is displayed to the screen and compared with the more accurate value calculated by the Matlab function `cos()`.

**Suggested Use**

Try including 5 terms and evaluating the series at `x=0.1` radians. Run the code a few more times. How large can you make `x` and still kep the error `< 10^-3`?