Pregunta 3 · Recursos Informáticos UB Exemples 2020

Tema: Sèries numèriques, aproximacions i errors · Del examen Exemples (2020)

Enunciado

Pregunta 3 (20 punts). Aproximació del cosinus per sèrie de Taylor i tabulació de resultats

La funció trigonomètrica cosinus es pot aproximar a través del desenvolupament en sèrie següent:

cos⁡(x)=∑n=0∞(−1)nx2n(2n)!≈1−x22!+x44!−x66!+x88!−x1010!+…\cos(x) = \sum_{n=0}^{\infty} (-1)^n \frac{x^{2n}}{(2n)!} \approx 1 - \frac{x^2}{2!} + \frac{x^4}{4!} - \frac{x^6}{6!} + \frac{x^8}{8!} - \frac{x^{10}}{10!} + \ldots

Es demana realitzar un programa complet en Python que calculi diverses aproximacions de cos⁡(45∘)\cos(45^\circ):

a.

Definiu una funció que rebi el punt xx (en radians) i un nombre enter que indiqui la quantitat de termes a sumar, i retorni el valor acumulat de la sèrie.

b.

Utilitzant la funció definida, genereu una taula per als 5 primers termes (des de 1 fins a 5 termes acumulats) per a l'angle de 45∘45^\circ, mostrant el nombre de termes, el valor aproximat i l'error absolut respecte al valor exacte obtingut amb la funció estàndard de la biblioteca math.

Requeriments de format:

Cal incloure la capçalera nterm, cos_valor, error sobre les columnes corresponents.

El nombre de termes s'ha de justificar a la dreta ocupant 3 espais (especificador de format ":>3").

El valor calculat ha d'ocupar un total de 10 espais amb 5 xifres decimals.

L'error ha d'ocupar 8 espais en total amb 5 xifres decimals.

Nota: Recordeu que el mòdul math conté les funcions factorial, radians i cos.

Enunciado: Pregunta 3 · Recursos Informáticos UB Exemples 2020

Solución

Según los criterios oficiales de corrección

Implementació del programa complet en Python per a l'aproximació de cos(45°) per sèrie de Taylor i tabulació de resultats

Solución: ```python import math def aproxima_cos(x, num_termes): suma = 0.0 for n in range(num_termes): terme = ((-1)n) * (x(2 * n)) / math.factorial(2 * n) suma += terme return suma # Angle a avaluar: 45 graus convertits a radians angle_rad = math.radians(45) valor_real = math.cos(angle_rad) # Impressió de la capçalera print("nterm, cos_valor, error") # Càlcul i tabulació per als 5 primers nombres de termes for nterm in range(1, 6): cos_valor = aproxima_cos(angle_rad, nterm) error = abs(valor_real - cos_valor) print(f"{nterm:>3} {cos_valor:10.5f} {error:8.5f}") ```

La explicación paso a paso, hecha con IA, es Premium. Premium

Resuélvelo aquí mismo: corrección automática, pistas y solución paso a paso.

‹ Pregunta 1 · Exemples 2020 · Ejercicio 2016 Part I - Exercici 3: Sumatori d'una sèrie · 2016 ›

Más ejercicios de Sèries numèriques, aproximacions i errors