#include <iostream>
#include <cstdlib>
#include <cmath>
using namespace std;
const double EPS = 0.1;
const int COUNT_ITERATIONS = 100;
const double PI = 3.14159265;
double F ( double x ) {
return ( !(int)x ? 1. : x*F( x - 1 ) );
}
double S ( double x ) {
double res = 0;
for ( int i = 0; i < COUNT_ITERATIONS; i++ ) {
res += pow ( -1., i )*pow ( x, 2*i ) / F ( 2*i + 1 );
}
return res;
}
double Y ( double x ) {
return sin ( x ) / x;
}
int main () {
cout << F ( 10 ) << " " << F ( 13 ) << " " << F ( 15 ) << endl;
cout << "x\t\tY(x)\t\tS(x)" << endl;
for ( double x = 0.1; x < PI; x += 0.33 ) {
cout << x << ":\t" << Y ( x ) << "\t" << S ( x ) << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGxpYj4KI2luY2x1ZGUgPGNtYXRoPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY29uc3QgZG91YmxlIEVQUyA9IDAuMTsKY29uc3QgaW50IENPVU5UX0lURVJBVElPTlMgPSAxMDA7CmNvbnN0IGRvdWJsZSBQSSA9IDMuMTQxNTkyNjU7Cgpkb3VibGUgRiAoIGRvdWJsZSB4ICkgewoJcmV0dXJuICggIShpbnQpeCA/IDEuIDogeCpGKCB4IC0gMSApICk7Cn0KCmRvdWJsZSBTICggZG91YmxlIHggKSB7Cglkb3VibGUgcmVzID0gMDsKCWZvciAoIGludCBpID0gMDsgaSA8IENPVU5UX0lURVJBVElPTlM7IGkrKyApIHsKCQlyZXMgKz0gcG93ICggLTEuLCBpICkqcG93ICggeCwgMippICkgLyBGICggMippICsgMSApOwoJfQoJCglyZXR1cm4gcmVzOwp9Cgpkb3VibGUgWSAoIGRvdWJsZSB4ICkgewoJcmV0dXJuIHNpbiAoIHggKSAvIHg7Cn0KCmludCBtYWluICgpIHsKCWNvdXQgPDwgRiAoIDEwICkgPDwgIiAiIDw8IEYgKCAxMyApIDw8ICIgIiA8PCBGICggMTUgKSA8PCBlbmRsOwoJY291dCA8PCAieFx0XHRZKHgpXHRcdFMoeCkiIDw8IGVuZGw7Cglmb3IgKCBkb3VibGUgeCA9IDAuMTsgeCA8IFBJOyB4ICs9IDAuMzMgKSB7CgkJY291dCA8PCB4IDw8ICI6XHQiIDw8IFkgKCB4ICkgPDwgIlx0IiA8PCBTICggeCApIDw8IGVuZGw7Cgl9CglyZXR1cm4gMDsKfQ==