Advertisement
Guest User

Untitled

a guest
Oct 14th, 2017
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.12 KB | None | 0 0
  1. #include <iostream>;
  2. #include <string>;
  3. #include <thread>;
  4. using namespace std;
  5.  
  6.  
  7. int volatile A1 = 0, B1 = 0, C1 = 0, D1 = 0;
  8.  
  9. void schet(int ot, int ido, int num){
  10. int s = 0, prom = 0;
  11.  
  12. for (int i = ot; i <= ido; i++){
  13. prom = 0;
  14.  
  15. for (int j = 0; j < i + 1000000000; j++){//этот цикл просто для задержки
  16. if (j % 2 == 0) prom = 1; else prom = -1;
  17. }
  18.  
  19. s = s + i + prom;
  20.  
  21. switch (num){
  22. case 1: A1 = s;
  23. case 2: B1 = s;
  24. case 3: C1 = s;
  25. case 4: D1 = s;
  26. }
  27.  
  28. }
  29.  
  30. }
  31.  
  32. void main() {
  33.  
  34. setlocale(LC_ALL, "");
  35. int k = 0, A = 0, B = 0, C = 0, D = 0;
  36.  
  37. cout << "сумма от нуля до: ";
  38. cin >> k;
  39. A = k / 4;
  40. B = A + k / 4;
  41. C = B + k / 4;
  42. D = C + k / 4;
  43. cout << A << endl << B << endl << C << endl << D << endl;
  44. thread At(schet, 1, A, 1);
  45. thread Bt(schet, A+1, B, 2);
  46. thread Ct(schet, B+1, C, 3);
  47. thread Dt(schet, C+1, D, 4);
  48.  
  49. if (At.joinable()){ At.join(); }
  50. if (Bt.joinable()){ Bt.join(); }
  51. if (Ct.joinable()){ Ct.join(); }
  52. if (Dt.joinable()){ Dt.join(); }
  53.  
  54. //cout<< schet(1, k);
  55. cout << A1 + B1 + C1 + D1;
  56. system("pause>nul");
  57.  
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement