//============================================================================
// Name : ch_lab1_w.cpp
// Author : Warlock
//============================================================================
#include <iostream>
#include <cmath>
using namespace std;
int fact(int a);
int main() {
double sum = 0;
int i = 1, N = 0;
double e = 0.001;
double dx = 0.05;
double x,a,ft;
cout << "+-----------+--------------+--------------+-----------------------+-------+"<<endl;
cout << "| x | f(x) | ft(x) | (f(x)-ft(x))/f(x)*100 | N |"<<endl;
cout << "+-----------+--------------+--------------+-----------------------+-------+"<<endl;
for(x = 0; x < 1; x += dx)
{
ft = cos(x) - 1;
a = pow((-1),i)*((pow(x,2*i))/(fact(2*i)));
sum = a;
for(i = 2; abs(a) < e; i++, N++)
{
a = pow((-1),i)*((pow(x,2*i))/(fact(2*i)));
sum += a;
}
printf("| %.2lf | %.5lf | %.5lf | %.5lf | %d | \n",x,sum,ft,(sum-ft)/sum*100,N);
// cout << "| " << x <<" "<< sum <<" "<< ft <<" " << (sum-ft)/sum*100 << " " << N <<" |"<<endl;
}
cout << "+-----------+--------------+--------------+-----------------------+-------+"<<endl;
cin.get();
return 0;
}
int fact(int a)
{
if(a > 0)
{
return a*fact(a-1);
}
return 1;
}