Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2017
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.75 KB | None | 0 0
  1. double func1(double x)
  2. {
  3.     double Y = (sqrt(0.6*x + 1.5)) / (2*x + sqrt(x*x + 3));
  4.     return Y;
  5. }
  6.  
  7. double func2(double x)
  8. {
  9.     double Y = 1 / sqrt(x*x + 0.6);
  10.     return Y;
  11. }
  12.  
  13. double func3(double x)
  14. {
  15.     double Y = (sin(0.8 * pow(x,2) + 0.3)) / (0.7 + cos(1.2*x + 0.3));
  16.     return Y;
  17. }
  18.  
  19. double func4(double x)
  20. {
  21.     double Y = (pow(x, 2) * log(x));
  22.     return Y;
  23. }
  24.  
  25.  
  26. /* ==========================
  27.  Fucntions Of Solving Method
  28.  ========================== */
  29.  
  30. double meth1(double a, double b, int n)
  31. {
  32.     double sum = 0, h, I;
  33.    
  34.     h = (b - a) / n;
  35.    
  36.     for(int i = 0; i <= (n - 1); i++)
  37.     {
  38.         sum += func1((a + i*h));
  39.     }
  40.    
  41.     I = h * sum;
  42.     return I;
  43. }
  44.  
  45. double meth2(double a, double b, int n)
  46. {
  47.     double sum = 0, h, I;
  48.    
  49.     h = (b - a) / n;
  50.    
  51.     for(int i = 1; i <= n; i++)
  52.     {
  53.         sum += func2((a + i*h));
  54.     }
  55.    
  56.     I = h * sum;
  57.     return I;
  58. }
  59.  
  60. double meth3(double a, double b, int n)
  61. {
  62.     double sum = 0, h, I;
  63.    
  64.     h = (b - a) / n;
  65.    
  66.     for(int i = 0; i <= (n - 1); i++)
  67.     {
  68.         sum += func3((a + i*h + h/2));
  69.     }
  70.    
  71.     I = h * sum;
  72.     return I;
  73. }
  74.  
  75. double meth4(double a, double b, int n)
  76. {
  77.     double sum = 0, h, I;
  78.    
  79.     h = (b - a) / n;
  80.     sum = (func4(a) + func4(a + n*h)) / 2;
  81.    
  82.     for(int i = 1; i <= n; i++)
  83.     {
  84.         sum += func4((a + i*h));
  85.     }
  86.    
  87.     I = h * sum;
  88.     return I;
  89. }
  90.  
  91.  
  92.  
  93. /* ==========================
  94.  Fucntions Of Accuracy
  95.  ========================== */
  96.  
  97. double accuracy1(double a, double b, int n){
  98.     double Eps;
  99.     cout << "Введите точность: ";
  100.     cin >> Eps;
  101.    
  102.     for(int i = 0; i < n; i++){
  103.         if(abs(meth1(a, b, n + 1) - meth1(a, b, n)) <= Eps)
  104.             return meth1(a, b, n);
  105.         else n++;
  106.     }
  107.     return 0;
  108. }
  109.  
  110. double accuracy2(double a, double b, int n)
  111. {
  112.     double Eps;
  113.     cout << "Введите точность: ";
  114.     cin >> Eps;
  115.    
  116.     for(int i = 0; i < n; i++){
  117.         if(abs(meth2(a, b, n + 1) - meth2(a, b, n)) <= Eps)
  118.             return meth2(a, b, n);
  119.         else n++;
  120.     }
  121.     return 0;
  122. }
  123.  
  124. double accuracy3(double a, double b, int n)
  125. {
  126.     double Eps;
  127.     cout << "Введите точность: ";
  128.     cin >> Eps;
  129.    
  130.     for(int i = 0; i < n; i++){
  131.         if(abs(meth3(a, b, n + 1) - meth3(a, b, n)) <= Eps)
  132.             return meth3(a, b, n);
  133.         else n++;
  134.     }
  135.     return 0;
  136. }
  137.  
  138. double accuracy4(double a, double b, int n)
  139. {
  140.     double Eps;
  141.     cout << "Введите точность: ";
  142.     cin >> Eps;
  143.    
  144.     for(int i = 0; i < n; i++){
  145.         if(abs(meth4(a, b, n + 1) - meth4(a, b, n)) <= Eps)
  146.             return meth4(a, b, n);
  147.         else n++;
  148.     }
  149.     return 0;
  150. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement