Advertisement
Guest User

Untitled

a guest
Jun 20th, 2021
37
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.03 KB | None | 0 0
  1. #include <windows.h>
  2. #include <iostream>
  3. #include <iomanip>
  4. #include <string>
  5. #include <vector>
  6.  
  7. using namespace std;
  8.  
  9. class MatrVect
  10. {
  11. public:
  12. int Row;
  13. int Col;
  14. int data;
  15.  
  16. vector <int> Clmn;
  17. vector <int> Str;
  18. vector < vector <int> > Mtr;
  19.  
  20. double S; int q;
  21.  
  22. /////////////// ИНИЦИАЛИЗАЦИЯ МАТРИЦЫ ////////////////
  23.  
  24. MatrVect(int rr, int cc)
  25. {
  26. Row= rr; Col= cc;
  27. for (int r0= 0; r0<Row; r0++)
  28. {
  29. for (int c0= 0; c0<Col; c0++)
  30. {
  31. data=(r0+1)*10+(c0+1);
  32. Clmn.push_back(data);
  33. }
  34. Mtr.push_back(Clmn);
  35. Clmn.erase(Clmn.begin(), Clmn.end());
  36. }
  37. }
  38.  
  39. ////////////////////// ДЕСТРУКТОР /////////////
  40.  
  41. ~MatrVect()
  42. {
  43. // Динамику удалить
  44. }
  45.  
  46. ///////////////// ВСТАВИТЬ СТРОКУ ///////////
  47.  
  48. void InsertRow(int rw)
  49. {
  50. Str.insert(Str.begin(), Col, 0);
  51. Mtr.insert(Mtr.begin()+rw, Str);
  52. Row++;
  53. }
  54.  
  55. ///////////////// ВСТАВИТЬ СТОЛБЕЦ ///////////
  56.  
  57. void InsertClmn(int cl)
  58. {
  59. for (int r=0; r<Row; r++) Mtr[r].insert(Mtr[r].begin()+cl, 0);
  60. Col++;
  61. }
  62.  
  63. ///////////////// УДАЛЯЕМ СТРОКУ /////////////////
  64.  
  65. void DelRow(int rw)
  66. {
  67. Mtr.erase(Mtr.begin() + rw); Row--;
  68. }
  69.  
  70. ///////////////// УДАЛЕНИЕ СТОЛБЦА /////////////////
  71.  
  72. void DelClmn(int cl)
  73. {
  74. for (int r=0; r<Row; r++) Mtr[r].erase(Mtr[r].begin()+cl);
  75. Col--;
  76. }
  77.  
  78.  
  79. ///////////////// ВЫВОД МАТРИЦЫ ////////////////
  80.  
  81. void ShowMatr()
  82. {
  83. for (int r0= 0; r0<Row; r0++)
  84. {
  85. for (int c0= 0; c0<Col; c0++)
  86. {
  87. cout << Mtr[r0][c0] << "\t";
  88. }
  89. cout << endl;
  90. }
  91. }
  92.  
  93. /////////////////// ПОЛЬЗОВАТЕЛЯ ФУНКЦИИ ///////////
  94.  
  95. void InputMidlleArith()
  96. {
  97. double Sa=0; q=0;
  98. cout << "Введите уровень среднеарифметического S= "; cin >> S;
  99. for (int r=0; r<Row; r++)
  100. {
  101. for (int c=0; c<Col; c++)
  102. {
  103. Sa= Sa+ double(Mtr[r][c]);
  104. }
  105. Sa/= double(Col); if (Sa>S) q++;
  106. }
  107. cout << "Строк со среденеарифметическим больше заданного " << S;
  108. cout << " в матрице " << q << " штук" << endl;
  109. }
  110. ///////////////////
  111.  
  112. protected:
  113. private:
  114. };
  115.  
  116. ///////////////////////////////////
  117. int main(int argc, char **argv)
  118. {
  119. // Руссификация сообщений
  120.  
  121. system("chcp 1251 > nul");
  122. SetConsoleTitle(TEXT("ОтветыМейлРу")); //Для совместимости с VS
  123.  
  124. MatrVect mv(5,5); mv.ShowMatr();
  125.  
  126. mv.InputMidlleArith();
  127.  
  128. cout<<endl; system("pause");
  129. return 0;
  130. }
  131.  
  132.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement