Programación General > C/C++

 Exponencial de un número

<< < (2/2)

ermiguel1979:
Gracias punteronulo, era justamente eso de los tipos, y algo de código. Ya lo tengo, lo mando para que lo veais. Mil gracias.


--- Código: C ---  /*Ejercicio 6º; Tema 3*/

//Realizar un algoritmo que lea un numero 'x' mayor que cero y calcule su
//exponencial de la forma: e<x> = 1 + x<1>/1! + x<2>/2! + x<3>/3! +...+ x<i>/i!
//(<> representa 'elevado a '). Siendo 'i' el primer termino que hace:
//(x<i+1>)/(i+1)! < 0.001

/*Algoritmo -> EXPONENCIAL DE UN NUMERO*/

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

//Funcion que calcula el factorial
double factorial (double x){
   if (x!=1){
      return (x*factorial(x-1));
   }
   return 1;
}

//Cuerpo del algoritmo
int main (void){
   /*Declaracion de variables*/
   double numero;               //numero al que se calcula el exponencial
   int i=0, a;                  //contadores
   double aux;                  //intermedia
   double exponencial=1;         //salida (muestra el resultado)
   /*Leer variables*/
   printf("Introduzca el numero a calcular");
   scanf("%lf", &numero);
   
   //OPERACIONES
   /*Encontrar el termino 'i'*/
   do{
      aux=(pow(numero, i+1)/factorial(i+1));
      i++;
   }while(aux >= 0.001);
   i=i-1;
   printf("son necesarios %i terminos en la sucesionn", i);
   /*Calculo del exponencial*/
   for(a=1; a<=i; a++){
      exponencial = exponencial +((pow(numero, a))/factorial(a));
   }
   
   //RESULTADOS
   printf("%f", exponencial);
   
   return EXIT_SUCCESS;
}

--- Código: C ---  

Un saludo desde Granada.

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa