Hyperbolic cosine

Some time ago someone asked me to write my own implementation of the hyperbolic cosine (http://pl.wikipedia.org/wiki/Funkcje_hiperboliczne) based on the Taylor series.

A quick proof-of-concept version:

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

double silnia (double n){
    if (n <= 1) return 1;
    else return silnia(n - 1)*n;
}

double mycosh(double z){
    double result = 1;
    int ilosc_wyr_ciagu = 30;
    int i;
    for (i = 1; i < ilosc_wyr_ciagu; i++){
        result += pow(z, 2*i) / silnia(2*i);
    }
    return result;
}

int main(int argc, char *argv[]) {
    double arg, c1, c2, blad;
    arg = 3.113408;
    c1 = cosh(arg);
    c2 = mycosh(arg);
    blad = abs(c2-c1)/c2;
    printf(" z=%f; cosh(z)=%f; mycosh(z)=%f; blad=%.90f \n", arg, c1, c2, blad);
    system("PAUSE");
    return 0;
}