Hi there,
I recently got help on creating a script to calculate the value of cos(x) using for loops. The question asks:
"Write a script which will calculate the value of cos(x) (ask the user for the value of x and n):
cos(x)=( from k=1 –> n )∑(-1) ̂(k-1)(x ̂(2(k-1))/(2(k-1))!)
" I had real problems getting the answer and so asked a tutor to help me with it. She managed to get the code working but I failed to understand how it actually works. (her explanation was not very clear)
So, I have sat staring at it for ages and it still doesn't make sense to me.
Here it is:
% Ask user for values x, n
x=input('Please enter a value for x: '); %cos angle
x_rad=x*pi/180;n=input('Please enter a value for n: '); %nth term
%factorial
fact=1;sum=0;for k=1:n initial=-1; for a=0:(k-1) initial=(-1)*initial; end numerator=1; for b=1:2*(k-1) numerator=numerator*x_rad; end for t=1:2*(k-1) fact=fact*t; end total=(initial*numerator)/fact; sum=sum+total;endfprintf('cos(%d)=%6.6f \n',x,sum);
Can anyone explain how this code is working in the for loop? I am so confused.
Also, any advice on a simpler way to do this?
Thanks so much, Laura
Best Answer