Advertisement
Guest User

Untitled

a guest
Apr 25th, 2017
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.22 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. // Функция-шаблон для заполнения динамического массива.
  6. template <typename T>
  7. void arr(T **a, int n, int m)
  8. {
  9. for (int i = 0; i < n; i++)
  10. for (int j = 0; j < m; j++)
  11. {
  12. cout << "[" << i << "][" << j << "]=";
  13. cin >> a[i][j];
  14. }
  15. }
  16.  
  17. //Функция-шаблон для подщеста среднего арифметического отрицательных чисел.
  18. template <typename T>
  19. void mid(T **array, int n, int m)
  20. {
  21. /* а - переменная показывающая кол-во отрицательных элементов.
  22. S - переменная являющаяся суммой отрицательных элементов.
  23. d - переменная которая находит среднее арифметическое.
  24. */
  25. int a = 0;
  26. double S = 0;
  27. double d;
  28.  
  29. // цикл обхода матрицы для нахождения отрицательного элемента.
  30.  
  31. for (int i = 0; i < n; i++)
  32. for (int j = 0; j < m; j++)
  33. {
  34.  
  35. S += array[i][j];
  36. a++;
  37.  
  38. }
  39. d = S/a;
  40.  
  41. // Условие, которое проверяет "Есть ли вообще отрицательные элементы".
  42.  
  43. if (a>0) cout << d;
  44. else cout << "Errors";
  45. }
  46.  
  47. int main()
  48. {
  49. // переменные для указания кол-ва строк и столбцов.
  50. int n,m;
  51. cin >> n >> m;
  52.  
  53. //инициализация двумерного массива (матрицы).
  54.  
  55. int **a = new int *[n];
  56. for (int i = 0; i < n; i++)
  57. a[i] = new int [m];
  58.  
  59. // arr - Функция заполнения массива.
  60. arr(a,n,m);
  61.  
  62. // цикл вывода массива на экран, для проверки ввода.
  63. for (int i=0; i<n; i++)
  64. {
  65. for (int j=0; j<m; j++)
  66. {
  67. cout << a[i][j] << " ";
  68. }
  69. cout << endl;
  70. }
  71.  
  72. // Функция для вывода среднего арифметического.
  73. mid(a,n,m);
  74.  
  75. return 0;
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement