Advertisement
Jgug

Untitled

Jun 4th, 2012
392
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.38 KB | None | 0 0
  1. #include <iostream.h>
  2. #include <iomanip.h>
  3. #include <math.h>
  4. #include <stdio.h>
  5. #include <stdlib.h>
  6.  
  7. double X[100],Y[100], x_0, x_1, y_0, y_1, d, de, z;
  8. int i, l, iter;
  9. int a=4;
  10. int b=7;
  11. double eps=0.0001;
  12. //======================================================|
  13.  
  14. double Function(double x)
  15. {
  16.     double F=0;
  17.     F=exp(x)/pow(x,3)-pow(sin(x),3)-2;
  18.     return F;
  19. }
  20.  
  21. //======================================================|
  22. int main()
  23. {
  24.     //__Zapolnenie__massiva__iksov__i__igrekov____________|
  25.     for (i=0; i<21; i++)
  26.     {
  27.         X[i] = a+i*double(b-a)/20;
  28.         Y[i] = Function(X[i]);
  29.     }
  30.  
  31.     //__Vivod__Tablicsi___________________________________|
  32.     cout<<"______________________________________________________________"<<endl;
  33.     printf("X\tY\n");
  34.     cout<<"______________________________________________________________"<<endl;
  35.     for (i=0; i<21; i++)
  36.     {
  37.         printf("%1.1f\t%5.3f\n",X[i],Y[i]);
  38.     }
  39.  
  40.     //__Metod__Vegsteina__________________________________|
  41.     l=0;
  42.     for (i=0; i<21; i++)
  43.     {
  44.         if (Y[i]*Y[i+1]<0)
  45.         {
  46.             l++;
  47.             x_0=X[i];
  48.             x_1=X[i+1];
  49.             y_0=Y[i];
  50.             y_1=Y[i+1];
  51.             iter=0;
  52.             do
  53.             {
  54.                 iter++;
  55.                 d=x_1-x_0;
  56.                 z=x_1-y_1*d/(y_1-y_0);
  57.                 de=fabs(x_1-z);
  58.                 x_0=x_1;
  59.                 x_1=z;
  60.                 y_0=y_1;
  61.                 y_1=Function(z);
  62.             }
  63.             while (de<eps || iter>100);
  64.         }
  65.     }
  66.     cout<<"x_0["<<l<<"]= "<<z<<endl;
  67.     cout<<"Iter= "<<iter<<endl;
  68.     cout<<"l= "<<l<<endl;
  69.     return 0;
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement