Skip to content

Instantly share code, notes, and snippets.

@iliaaw
Created March 21, 2013 14:40

Revisions

  1. iliaaw created this gist Mar 21, 2013.
    29 changes: 29 additions & 0 deletions taylor.c
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,29 @@
    #include <stdio.h>
    #include <math.h>

    /*
    * В этой функции считается сумма бесконечного ряда
    */
    double my_awesome_ln(double x) {
    double const epsilon = 0.0000001;
    double z, delta, result;
    int i;

    z = (x - 1) / (x + 1);
    delta = 1;
    result = 0;

    for (i = 1; delta > epsilon; i++) {
    delta = 2 / (2 * (double)i - 1) * pow(z, 2 * (double)i - 1);
    result += delta;
    }

    return result;
    }

    int main() {
    double x = 123;
    printf("%8f\n", my_awesome_ln(x));

    return 0;
    }