I need to find out what this program is missing

1 visualizzazione (ultimi 30 giorni)
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 Commenti
Albert Yam
Albert Yam il 12 Lug 2012
If you are stuck in a loop. (See 'Busy' in the bottom left.) hit Ctrl+C

Accedi per commentare.

Risposta accettata

Albert Yam
Albert Yam il 12 Lug 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 Commenti
Albert Yam
Albert Yam il 12 Lug 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 il 12 Lug 2012
I will remember to use the {} next time. Thank you for your help.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by