Is the following program correct

s=0;
n=input("no of terms");
x=input("put the value of x");
for i=0:n-1
s=(-1).^i*(x.^i)/(factorial(x));
end
disp(s)
;

1 comentario

Stephen23
Stephen23 el 26 de Sept. de 2021
@Deepak Singh: your code does not add to s, instead your code just returns the result of the last division.
You need to have something like s = s + ...

Iniciar sesión para comentar.

Respuestas (2)

Voss
Voss el 18 de Dic. de 2021
s=0;
n=input("no of terms");
x=input("put the value of x");
for i=0:2:2*(n-1)
s=s+(-1).^(i/2)*(x.^i)/(factorial(i));
end
disp(s)
Torsten
Torsten el 18 de Dic. de 2021
To avoid overflow in the x^i and factorial(i) terms, it is advisable to code it this way:
n = input("no of terms");
x = input("put the value of x");
summand = 1.0;
summe = 1.0;
for i = 1:n-1
summand = -summand * x/(2*i-1) * x/(2*i);
summe = summe + summand
end

Categorías

Más información sobre Programming en Centro de ayuda y File Exchange.

Productos

Etiquetas

Preguntada:

el 26 de Sept. de 2021

Respondida:

el 18 de Dic. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by