/* atk i - harjoitus 6, tehtävä 1 */ #include #include double exps(int n, double x); double expw(int n, double x); main() { double x, summa1, summa2, tarkka; int n; printf("Lasken exp(x):n pot. sarjakehitelman n:teen\n" "asteeseen saakka. Anna n ja x:"); scanf("%d%lf", &n, &x); summa1 = exps(n, x); summa2 = expw(n, x); tarkka = exp(x); printf("exps(x) = %.25f\n", summa1); printf("expw(x) = %.25f\n", summa2); printf("e^x = %.25f\n", tarkka); printf("S - e^x = %.25g\n", summa1 - tarkka); } double exps(int n, double x) { int i; double s = 1, t = 1; for (i = 1; i <= n; i++) { t *= x / i; s += t; } return s; } double expw(int n, double x) { int i; double s = 1, t = 1; i = 1; while (i <= n) { t *= x / i; s += t; i++; } return s; }