Solving questions related to taylor series expansion
    3 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Max Altshuler
 el 11 de Abr. de 2019
  
    
    
    
    
    Editada: James Tursa
      
      
 el 11 de Abr. de 2019
            x = pi/4;
i = 2;
term(1) = -0.080746;
while term(i-1) >= 0.0001
    term(i) = ((-1)^i/factorial(2*i+1))*x^(2*i+1)
    i = i+1
end
term1(1) = -0.080746;
a = 2;
while term1(a-1) >= 1*10^-10
    term1(a) = ((-1)^a/factorial(2*a+1))*x^(2*a+1)
    a = a+1
end
fprintf('It takes %i terms',i)
fprintf('It takes %i terms',a)

My code is above and what follows is the question. I do not understand why this is not working. The first while loop works correctly but the second does not. Also, would a correct answer for the last part be "You can make it so that if 'i' reaches a certain number, break the loop." 
Thanks for any help...
0 comentarios
Respuesta aceptada
  James Tursa
      
      
 el 11 de Abr. de 2019
        
      Editada: James Tursa
      
      
 el 11 de Abr. de 2019
  
      You need to compare the absolute value of the term to your tolerance. Remember, some of the terms are negative.
while abs(term(i-1)) >= 0.0001
etc.
And yes, you would break if your counter (i or a) reached a predetermined limit.
You will also need to double check and fix up the indexing you are using for your calculations ...
0 comentarios
Más respuestas (0)
Ver también
Categorías
				Más información sobre Expansion en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

