Advertisement
Guest User

Untitled

a guest
Dec 11th, 2018
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.27 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <locale.h>
  4.  
  5. int** newint(int n, int m) {
  6.     int** a = malloc(sizeof(int*)*n);
  7.     for (int i = 0; i < n; i++)
  8.         a[i] = (int*)malloc(sizeof(int)*m);
  9.     printf("Введите элементы матрицы: ");
  10.     for (int i = 0;i < n;i++)
  11.         for (int j = 0; j < m; j++)
  12.             scanf_s("%d", &a[i][j]);
  13.     return a;
  14. }
  15.  
  16. void printmatrix(int** a, int n, int m) {
  17.     for (int i = 0; i < n; i++) {
  18.         for (int j = 0; j < m; j++)
  19.             printf("%d ", a[i][j]);
  20.         printf("\n");
  21.     }
  22. }
  23.  
  24. void task(int** a, int n, int m) {
  25.     double s;
  26.     int k, k1, sum, maxi;
  27.     s = 0;
  28.     for (int i = 0; i < n; i++)
  29.         for (int j = 0; j < m; j++)
  30.             s += a[i][j];
  31.     s /= (n*m);
  32.     k1 = 0;
  33.     maxi = -1;
  34.     for (int i = 0; i < m; i++) {
  35.         k = 0;
  36.         for (int j = 0; j < n; j++) {
  37.             if (a[j][i] > s)
  38.                 k += 1;
  39.         }
  40.         if (k1 < k) {
  41.             k1 = k;
  42.             maxi = i;
  43.         }
  44.     }
  45.     sum = 0;
  46.     if (maxi != -1) {
  47.         for (int i = 0; i < n; i++)
  48.             sum += a[i][maxi];
  49.         printf("%d\n", sum);
  50.     }
  51.     else printf("Такого столбца нет\n");
  52.  
  53. }
  54. int main() {
  55.     setlocale(LC_ALL, "Rus");
  56.     int n, m;
  57.     printf("Введите размер матрицы n*m: ");
  58.     scanf_s("%d%d", &n, &m);
  59.     int** a = newint(n, m);
  60.     printmatrix(a, n, m);
  61.     task(a, n, m);
  62.     system("pause");
  63.     return 0;
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement