Advertisement
dllbridge

Untitled

Oct 11th, 2024
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.89 KB | None | 0 0
  1.  
  2.  
  3. #include <iostream>
  4. using namespace std;
  5. #include    <cmath>
  6.  
  7.  
  8. double x = 0.5;
  9.  
  10. double  fraction(int);
  11.  
  12. double   summa_Y();
  13. void     monitor();
  14.  
  15.  
  16. /////////////////////////////////////////////
  17. int factorial(int i)
  18. {          
  19.     if (i == 0) return 1;            
  20.     else return i * factorial(i - 1);
  21. }
  22.  
  23.  
  24. /////////////////////////////////////////////
  25. int main()
  26. {
  27.    
  28.     setlocale(LC_ALL, "rus");
  29.    
  30.     int      n;
  31.    
  32.     double   S,
  33.            eps = 0.0000001,
  34.              P,
  35.            Pon;
  36.                
  37.      
  38.  
  39.                
  40.     while(x < 0.80)
  41.     {
  42.      
  43.        Pon = fraction(1);
  44.        
  45.        monitor();
  46.          
  47.        for(n=2; n<=20; n++)
  48.        {
  49.                
  50.            P = fraction(n);
  51.                
  52.            if(fabs(P) > eps) Pon += P;    
  53.            else
  54.            {
  55.                
  56.               cout << n << " Моя сумма = "<<Pon+P<<"     ";
  57.               break;    
  58.            }    
  59.        }        
  60.        
  61.  
  62.        cout << "По проверке = "<< summa_Y() << endl;
  63.        x+=0.05;
  64.     }
  65.    
  66. return 0;
  67. }
  68.  
  69.  
  70. ///////////////////////////////////////
  71. double fraction(int n)               //
  72. {
  73.        
  74.      double f = (2*n*n + 1) * pow(x, 2*n);           //  numerator
  75.      
  76.      int   n2 = factorial(2*n);
  77.      
  78. return pow(-1, n-1) * f/n2;    
  79. }
  80.  
  81.  
  82. ///////////////////////////////////////
  83. double summa_Y()                     //  
  84. {
  85.   double S =  1 + (x * sin(x))/2 + (pow(x, 2)/2 - 1)*cos(x);
  86.   return S;      
  87. }
  88.  
  89.  
  90. ///////////////////////////////////////
  91. void monitor()                       //  
  92. {
  93.      
  94.        cout << "X = ";               //<< cout.width(6) << x << ";     ";
  95.        cout << fixed;
  96.        cout.precision(2);
  97.        cout << x << ";     ";
  98.        cout.precision(11);
  99.  
  100.       // cout.unsetf (ios::fixed);    //    cout сброс флагов
  101. }
  102.  
  103.  
  104.  
  105.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement