Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

AndinhoJp

Série de n termos

Recommended Posts

Boa noite pessoal,

Estou tentando resolver um exercício que está impossivel. O exercício pede para que faça um programa que receba o valor de X e o número de termos desejados e que seja obtenha o valor do termo:

S= 1 + X²/3! - X³/4! + X⁴/5! - X⁵/6! + X⁶/7! ...

 

Eu tentei fazer o programa dessa maneira:

#include<stdio.h>
#include<math.h>

int main(void)
{
int a;
while(a=50)
{
int x, ter, k, exp, i2;
float fat=1 , con, con2, con3;
printf("Digite o valor de X:");
scanf("%d", &x);
printf("Digite o numero de termos:");
scanf("%d", &ter);
for(k=3 , exp=2 ;k<=ter, exp<=ter;k++, exp++)
{
fat = fat*k;
}
if(exp % 2 == 0){
con = (pow(x,exp))/fat;
}else{if(exp % 2 != 0){
con2 = -(pow(x,exp))/fat;
}
}
con3 =(pow(x,exp))/fat;
printf("O fatorial e de %f\n", fat);
printf("O expoente e: %d\n", exp);
printf("Resultado: %f\n", con3);
}
return 0;
}

Entretanto, como vocês podem notar, não estou conseguindo realizar um raciocínio lógico correto para resolver o problema do fatorial que deveria começar com 3! e não com 1!, como mostra no código a cima.

Então, será que alguem poderia me dar uma luz para tentar resolver esse problema que dura 3 dias??

 

Obs. Eu pedi para imprimir o "fat" e o "exp" apenas para saber se estava tudo certo com a conta.

Obs. 2. ignorem o while, coloquei ele apenas para testar o programa repetidamente.

Obs. 3. Para X = 1 e numeros de termos = 1, o resultado deve ser 1,166666667 e X = 1 e numeros de termos = 2, o resultado deve ser 1,125, e assim por diante.

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

#include <stdio.h>
int main(void) {
  double total = 1.0;
  double x, fatorial, potencia;
  int n_termos,i;
 
  scanf("%d",&n_termos);
  scanf("%f", &x);
 
  fatorial = 6.0;
  potencia = x*x;
  for(i=2;i<=n_termos;i++) {
     total += (potencia/fatorial);
     potencia *= x;
     fatorial *= (i+2);
  }
 
  printf("%.2f",total);
  return 0;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.