ciao,
non è molto che programmo in c e vorrei qualche dritta per
migliorare questo sorgente per il calcolo di exp(x), con particolare riferimento ai tipi da usare e agli specificatori di formato. Comunque sono certo che
qualcosa si possa affinare anche negli algoritmi usati...
grazie tantecodice:#include <stdio.h> #define MAX_N 10 long fct(long); /* fattoriale*/ long double pow(long double, long); /*potenza*/ long double exp(long double); /* exp */ int main(){ printf("%Lf\n\n", exp(1)); return(0); } long fct(long x){ int i; long f = 1; if(x == 0) return(1); for(i = 1; x > 0; --x){ f = f * i; ++i; } return(f); } long double pow(long double x, long i){ int j; long double p; if(i == 0) return(1); if(i == 1) return(x); p = x; for(j = 1; j < i; ++j) p = p*x; return(p); } long double exp(long double x){ int i; long double sum, e; for(i = 1; i <= MAX_N; ++i) sum = sum + (pow(x, i)/fct(i)); e = 1 + sum; return(e); }
ciao