Ir ao conteúdo
  • Cadastre-se

Série de taylor de cosx


João Cardoso

Posts recomendados

Bom dia, estava a programar em c quando me deparei com um programa para o qual não arranjei solução, após a introdução de dois valores (ângulo x em graus e número k de termos) para se calcular e escrever no terminal o valor de cosx não utilizando a potenciação.

Considerando que cosx= (Imagem em anexo), começando o somatorio em n=0 até k estando x em radianos

Agradeço toda a ajuda que me possam dar

Spoiler

 

Spoiler

 

 

Image.jpg

Link para o comentário
Compartilhar em outros sites

@João Cardoso  Faça uma função usando um while para ficar somando todo termo gerado pela somatória até n=N, transforme também o radianos em reais, para que não haja conflito do tipo de dado.

Usando a biblioteca "Math.h", algumas funções já pré-definidas fazem o serviço sujo de processar os cálculos. Obtendo o resultado do tipo double float, retorne a função original.

Link para o comentário
Compartilhar em outros sites

Pra converter de graus pra radianos basta multiplicar por PI (3,14159...) e dividir por 180...

 

Essa série de taylor quando expandida para k termos fica:

cos(x) = 1 - (x^2)/2! + (x^4)/4! - (x^6)/6! + ... + { [(-1)^k] * (x^2k) } / (2k)!

 

Mas note que:

(x^2k) / (2k)! = [x * x^(2k-1)] / [2k * (2k-1)!] = (x / 2k) * [x^(2k-1) / (2k-1)!]    => (eq. 1)

 

E segue igualmente que:

x^(2k-1) / (2k-1)! = [x / (2k-1)] * [x^(2k-2) / (2k-2)!] = [x / (2k-1)] * { x^[2(k-1)] / [2(k-1)]! }   => (eq. 2)

 

Substituindo eq.2 em eq.1 temos que:

(x^2k) / (2k)! = (x / 2k) * [x / (2k-1)] * { x^[2(k-1)] / [2(k-1)]! }

(x^2k) / (2k)! = {x^2 / [2k * (2k-1)] } * { x^[2(k-1)] / [2(k-1)]! }

(x^2k) / (2k)! = [ x^2 / (4k^2 -2k) ] * { x^[2(k-1)] / [2(k-1)]! }

 

Logo se chamarmos (x^2k) / (2k)! = f(x, k), temos que:

f(x, k) = [ x^2 / (4k^2 -2k) ] * f(x, k-1)

 

Então para obter o próximo termo da série basta multiplicar o último termo obtido por [ x^2 / (4k^2 -2k) ]. E a série de taylor fica:

cos(x) = 1 - f(x, 1) + f(x, 2) - f(x, 3) + ... + [(-1)^k] * f(x, k)

 

 

Agora tente implementar o algoritmo para calcular cos(x) sabendo disto.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...