fork download
  1. #include <iostream>
  2. #include <iomanip>
  3. #include <cmath>
  4.  
  5. using namespace std;
  6.  
  7. const double pi = 3.1415926;
  8.  
  9. double NCos(int n)
  10. {
  11. static const double s2 = 1/sqrt(2);
  12. double res = (n%2 == 1) ? s2 : (n%4 == 0) ? 1 : 0;
  13. if (n%8 >= 3 && n%8 <= 5) res *= -1;
  14. return res;
  15. }
  16.  
  17. double summa(double x, double eps = 1e-7) {
  18. double sum = 1, term = 1;
  19.  
  20. for (int n = 1; abs(term) > eps; ++n)
  21. sum = sum + (term*=x/n) * NCos(n);
  22.  
  23. return sum;
  24. }
  25.  
  26. int main() {
  27. for (double x = 0.1; x < 1.05; x += 0.1) {
  28. cout
  29. << setprecision(3) << left << setw(4) << x
  30. << setprecision(7) << left << setw(10) << summa(x)
  31. << setprecision(7) << left << setw(10)
  32. << exp(x * cos(pi / 4))*cos(x * sin(pi / 4)) << endl;
  33. }
  34. }
  35.  
Success #stdin #stdout 0s 4224KB
stdin
Standard input is empty
stdout
0.1 1.070589  1.070589  
0.2 1.14041   1.14041   
0.3 1.208598  1.208598  
0.4 1.274173  1.274173  
0.5 1.336035  1.336035  
0.6 1.392954  1.392954  
0.7 1.44357   1.44357   
0.8 1.486382  1.486382  
0.9 1.519744  1.519744  
1   1.541863  1.541863