Espansione della serie Taylor di cos (x)

Ho una semplice domanda. Voglio scrivere un’estensione della serie Taylor per cos (x). E ho scritto questi codici

x=input('Please input an angle in degrees: '); cosx=1; for i=1:1:x addterm = (-1)^i*(x.^(2*i))/factorial(2*i); cosx = cosx + addterm; end a=['The value of cosine of ',num2str(x),' degrees is ', num2str(cosx)]; disp(a) 

Ma questo codice non ha dato un risultato reale, perché?

  • 1 Perché il Il numero di termini dipende dall’angolo (x)? Questo dovrebbe dipendere dalla precisione richiesta. E penso che siano radianti, non gradi …
  • ma ho gradi valori
  • allora devi convertirlo. O modificare l’estensione.
  • I ricordati grazie ancora

La serie Taylor che usi le esigenze x per esprimere in Radians. Dopo il input moltiplicare x di ��/180 per convertire gradi in radianti. Devi anche avere molte iterazioni, non solo x. Prova for i=1:1:10 Il fattore auto aumenta molto velocemente.

Perché lasci solo il tuo for loop percorsa da 1 a x; Probabilmente vuoi lasciarlo eseguire su un numero naturale specifico, ad esempio:

for i=1:1:100 

per ottenere i primi termini serie di 100 taylor. Inoltre, è possibile omettere la larghezza del passo se è 1, quindi

for i=1:100 

funziona anche.

Modifica: lo assume Inseri x in Radians, no?

Leave a comment

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *