Polinômio de Taylor para sen(x)
Publicado por David Lorente 12/09/2004
[ Hits: 28.402 ]
Homepage: .
Esse é o fonte do programa que calcula o valor da função sen(x), com x em radianos, por meio da expansão do polinômio de Taylor. Nele é possível especificar o número de termos que o polinômio terá. Para quem já estudou isso ou está estudando fica aí a oprtunidade para relembrar um pouco do assunto.
/************************************************************************** * Cálculo da função sen(x) por expansão da serie de Taylor * ***************************************************************************/ #include <stdio.h> #include <stdlib.h> double fatorial(int termos) //função que calcula fatorial(!) { double aux; aux = termos; while(termos > 1) { aux = aux * (termos - 1); termos--; } return (aux); } double power(double base, int expoente) //função potencia(x^y) { double resultado; int i; resultado = 1; if(expoente == 0) return 1; for(i = 0;i < expoente; i++) resultado = resultado * base; return (resultado); } double serie_seno(double x, int termos) { int i; double resultado; resultado = 0; for(i = 0; i < termos;i++) { resultado += power(-1, i) * power(x, 2*i + 1) / fatorial(2*i + 1); } return (resultado); } double seno() { double x; int termos; system("clear"); printf("****sen(x) pelo polinomio de Taylor****\n\n"); printf("Digite o numero de termos da sequencia: " ); scanf("%d", &termos); printf("\nDigite o valor de x para o calculo do sen(x), x = "); scanf("%lf", &x); printf("\n\nO resultado e: %1.15lf\n\n", serie_seno(x, termos)); getchar(); return 0; } int main() { seno(); return 0; }
De quantas maneiras pode-se preencher um tabuleiro de xadrez com dominós
Cálculo da equação do segundo grau
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Como atualizar o Debian 8 para o 10 (10)
Dica sobre iptables ACCEPT e DROP (6)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (29)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta