fork download
  1. #include <iostream>
  2. #include <ctime>
  3. #include <math.h>
  4. #include <cmath>
  5. #include <cstdlib>
  6. using namespace std;
  7.  
  8. double f(double x)
  9. {
  10. return 2*x;
  11. }
  12. int pow(int a, int b) {
  13. int result = 1;
  14. for (int i = 0; i < b; i++)
  15. result *= a;
  16. return result;
  17. }
  18. int main()
  19. {
  20. double m;
  21. double h;
  22. double sum;
  23. double t[65000];
  24. double T_alpha[200];
  25. double delta;
  26. double delta2;
  27. double N;
  28. double gamma;
  29. double x[200];
  30. double f_del2[200];
  31. double A[200];
  32. double alpha;
  33. double n;
  34. double h1;
  35. cout << "m=";
  36. cin >> m;
  37. cout << endl;
  38. cout << "delta=";
  39. cin >> delta;
  40. cout << endl;
  41. cout << "delta2=";
  42. cin >> delta2;
  43. cout << endl;
  44. h = 1 / m;
  45. alpha=pow(0.75, 0.25)*pow(delta, 0.25);
  46. n=m;
  47. h1=(2*alpha)/m;
  48. cout<<"h1="<<h1<<endl;
  49. cout << "h=" << h << endl;
  50. cout << "alpha=" << alpha << endl;
  51. for (int i = 0; i < m; i++)
  52. {
  53. x[i] = h*i;
  54. cout << "x[" << i << "]=" << x[i] << endl;
  55. }
  56. N = sqrt((0, 5 * (m*pow(delta / delta2, 2) - 1)) + 1);
  57. cout << "N=" << N << endl;
  58. for (int i = 0; i < m; i++)
  59. {
  60. A[i] = 1 + rand() % 100;
  61. cout << "A[" << i << "]=" << A[i] << endl;
  62. }
  63. for (int i = 0; i < m; i++)
  64. f_del2[i] = f(x[i]) + pow(1, i) * A[i] * delta2;
  65. for (int i = 4; i < m; i++)
  66. f_del2[i] = f(x[i]) + pow(-1, i) * A[i] * delta2;
  67. f_del2[2] = f(x[2]) + N*A[2] * delta2;
  68. f_del2[3] = f(x[3]) - N*A[3] * delta2;
  69. for (int i = 0; i < m; i++)
  70. cout << "f(x[" << i << "])=" << f(x[i]) << endl;
  71. for (int i = 0; i < m; i++)
  72. cout << "f_del2[" << i << "]=" << f_del2[i] << endl;
  73. for(int i = 0; i < n - 1; i++) {
  74. if (( ((x[i] - alpha) >= 0) && ((x[i] - alpha) <= 1) ) && ( ((x[i] + alpha) >= 0) && ((x[i] + alpha) <= 1) ))
  75. {
  76. int g=0;
  77. double a=x[i]-alpha;
  78. //cout << "a "<< a << endl;
  79. double b=x[i]+alpha;
  80. //cout << "b "<< b << endl;
  81. sum=0;
  82. while (a<=b)
  83. {
  84. t[g]=a;
  85. f_del2[g] = f(t[g]) + pow(1, g) * A[i] * delta2;
  86. sum += (3 / (2 * pow(alpha, 3))) * ( (t[g] - x[i]) * f_del2[g] );
  87. //cout<<3 / (2 * pow(alpha,3))<<" umnozhenie "<<g<<endl;
  88. cout<<(t[g] - x[i])<<" skobka "<<g<<endl;
  89. //cout<<f_del2[g]<<" fdelta "<<g<<endl;
  90. //cout<<t[g]<<endl;
  91. a+=h1;
  92. g++;
  93. }
  94. T_alpha[i]=sum;
  95. cout << "i = " << i << " T_alpha = " << T_alpha[i] << endl;
  96. }
  97. }
  98. system("PAUSE");
  99. return 0;
  100. }
Success #stdin #stdout #stderr 0s 16064KB
stdin
Standard input is empty
stdout
m=
delta=
delta2=
h1=-nan
h=inf
alpha=0
N=-nan
stderr
sh: 1: PAUSE: not found