cosine estimate taylor series
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
sos, trying to fix in 30 min, not sure what is going wrong, im getiing 1.6985 e 5 and answer should be 0.6916.
function res = cosineEstimate(ang, k)
ang = '045-00-00'
k = 2
%DMS to degrees
angSplit = strsplit(ang, '-')
firstCell = angSplit(1)
angForm = str2double(firstCell)
%degree to rad
rad = (angForm/180)*pi;
r = 0;
for n = 1:k;
e = 2*n
f= factorial(e)
m = (-1)^(n)
r = r + m*(angForm^e)/f
res = r
end
end
0 commentaires
Réponses (2)
KSSV
le 22 Fév 2022
Modifié(e) : KSSV
le 22 Fév 2022
x = 45*pi/180 ;
n = 10 ;
thesum = 0 ;
for i = 0:n
thesum = thesum+(-1)^i*x^(2*i)/factorial(2*i) ;
end
[cos(x) thesum]
1 commentaire
KSSV
le 22 Fév 2022
cos(pi/4)
How it is 0.6916? Are you targetting different angle? If not reduce the value of n and see.
Sulaymon Eshkabilov
le 22 Fév 2022
Here is the corrected code:
ang = '045-00-00';
k = 2;
res = cosineEstimate(ang, k)
function res = cosineEstimate(ang, k)
%DMS to degrees
angSplit = strsplit(ang, '-');
firstCell = angSplit(1);
angForm = str2double(firstCell);
%degree to rad
RAD = (angForm/180)*pi;
res= 0;
for n = 1:k
res = res + ((-1) .^ (k-1) .* RAD .^ k) ./ factorial(k);
end
end
0 commentaires
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!