Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/07/2014, 23:33
NaikiOwned
 
Fecha de Ingreso: agosto-2009
Mensajes: 110
Antigüedad: 14 años, 8 meses
Puntos: 1
problema con resultado de e^x

Tratando de resolver la serie que da e^x. me topo que mi sumador se estanca en 2 por lo que deja de sumar cuando toca sumarle decimales. tal como esta si ingreso 1 como para calcular una aproximado de e (neperiano) aprox 2.71 ...se estanca en 2. alguna sugerencia o error que vean en mi codigo?

Código:
#include <iostream>
#include <math.h>


using namespace std;

int factorial(int num){
	int fac=1;
	while(num > 1){
		fac = fac * num;
		num--;
	}
	return fac;
}

int exponencial(double x, int n){
	double exp;
	exp = pow(x,n) / factorial(n);
	return exp;
}

int main()
{
	int num;
	double e=0.0;
	cout<<"Digite un numero:";
	cin>>num;

	//el i-max varia al +infinito
	for(int i = 0;i<=20;i++){
		e = e + exponencial(num,i);
	}

	cout<<"la respuesta es "<<e<<endl;

	system("PAUSE");
	return 0;
}