I need to find out what this program is missing

1 view (last 30 days)
I'm trying to use this program to calculate the cos of a given(prompted) angle in degrees.
A=input('Enter angle:');
x=(pi/180)*A;
format long
a=0;c=0;sg=1;
while
c=c+sg*((x^(2*a))/(factorial(2*a))); % Infinite series calculation.
a=a+1;sg=-sg;
end
fprintf('cos = %6f',c);
I get no answer and I have to close Matlab and restart.
  4 Comments
Albert Yam
Albert Yam on 12 Jul 2012
If you are stuck in a loop. (See 'Busy' in the bottom left.) hit Ctrl+C

Sign in to comment.

Accepted Answer

Albert Yam
Albert Yam on 12 Jul 2012
while [condition] %that should only be true to run the loop
%stuff in loop
end % make sure to end the loop, but should give a warning about that
If your condition is just a constant, than your loop is always running. But your code is not 'copy/paste'-able into Matlab for us to check.
  4 Comments
Albert Yam
Albert Yam on 12 Jul 2012
A=input('Enter angle:');%angle in degrees
x=(pi/180)*A; % radians
n=input('Enter the number of places; ')
format long
a=0;c=0;sg=1;
while a~=n % New condition.
c=c+sg*((x^(2*a))/(factorial(2*a))); % Infinite series calculation.
a=a+1;sg=-sg;
end
fprintf('%6f',c);
You can always just hardcode n=6, in the condition, since you said it is a 'need'. While loops need a condition, how else would it know to stop looping (your previous problem)? Unless you know exactly how many times to loop (For loop). For the '>>' on the next line,
fprintf('%6f\n',c);
Please use the {}code formatting next time. It is easier for people to copy/paste into Matlab to see what is wrong.
A=input('Enter angle:');%angle in degrees x=(pi/180)*A; % radians n=input('Enter the number of places; ') format long a=0;c=0;sg=1; while a~=n % New condition. c=c+sg*((x^(2*a))/(factorial(2*a))); % Infinite series calculation. a=a+1;sg=-sg; end fprintf('%6f',c);
Comments out everything after the A=input
Aaron
Aaron on 12 Jul 2012
I will remember to use the {} next time. Thank you for your help.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!