Hola a todos y buenos días...
Tengo un problemilla con un ejercicio que no me sale; dice así:
Escribe un programa que calcule el valor de S para un número real X dado, utilizando la siguiente serie:
S = 1 + X + ((X^2)/2!) + ((X^3)/3!) +((X^4)/4!)...
Llevo hecho lo siguiente, que solo me funciona si no pongo sumandos fraccionarios...
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
/*Algotirmo -> SUCESION*/
int main (void){
/*Entradas*/
int numaprox; //el numero de sumandos factoriales deseados
double x; //el numero en cuestion para el que se calcula la sucesión
/*Salidas*/
float S;
/*Intermedias*/
float factorial=2; //el factorial del número del denominador
float aux; //las X de los numeradores de los sumandos
int i=2; //contador del bucle 'for'
float sumando=0; //el valor del sumando concreto de la iteración
float cuentasumando=0; //el valor total de los sumandos fraccionarios
/*Leer Entradas*/
printf("Introducir numero real para la sucesion: ");
scanf("%lg", &x);
printf("Indicar el numero de sumandos factoriales deseados: ");
scanf("%i", &numaprox);
/*OPERACIONES*/
/*Calculo de los Sumandos fraccionarios*/
if(numaprox > 0){
for(i=2; i<=numaprox; i++){
for(i=2; i<=numaprox; i++){ //calcular los factoriales
factorial=factorial*i;
}
aux=pow(x, i);
sumando=(aux/factorial);
cuentasumando=cuentasumando+sumando;
}
}
/*RESULTADOS*/
S = 1+x+cuentasumando;
printf("Para x=%lg, S = %fn", x, S);
system("PAUSE");
}
Gracias a todos por vuestra atencion!!!