#include <stdio.h>
#include <math.h>
#define PI 3.141592654
/*
long double factorial(int n)
 {
  return (n<=1) ? 1 : n*factorial(n-1);
 }
double tylor_sine(double x) {
int n=0,fac;
double result=0,term=0;
do {
        fac=(2*n+1);
        result=result+term;
        term=pow(-1,n)*(pow(x,fac)/factorial(fac));
        n++;
       }while(fabs(term)>=.00000001);
 return result;
}
*/
double cube (double x) {
    return x*x*x;
}
double sine (double angle) {
    if (angle < 0.0000001) { return angle; } 
    return 3*(sine (angle/3.0)) - 4*cube(sine (angle/3.0));
}
int main() {
    //printf("tylor-series sine(10): %f\n",tylor_sine(10.0));
    printf("triple-angle sine(10): %f\n",sine(10.0));
    //printf("tylor-series sine(1): %f\n",tylor_sine(1.0));
    printf("triple-angle sine(1): %f\n",sine(1.0));
    //printf("tylor-series sine(PI/2): %f\n",tylor_sine(PI/2));
    printf("triple-angle sine(PI/2): %f\n",sine(PI/2));
    getchar();
    return 0;
}
//sorry codepad math.h don't have pow() function 
//i have to comment out tylor series but you can try un-comment and compile it
