codegod313

Vovs 1

Jan 26th, 2020
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.20 KB | None | 0 0
  1. void Sort1(int k, int **ms) // сортировка массива  методом "через отбор"
  2. {
  3.     for (int u = 0; u < k; u++) {
  4.         int i, j, m, kk;
  5.         for (i = u+1; i < k - 1; ++i)
  6.         {
  7.             m = i;                    // индекс элемента для упорядочивания
  8.             for (j = i + 1; j < k; ++j) // перебор последующих эл-тов справа от i-го
  9.                 if (ms[u][j] < ms[u][m])          // найден меньший
  10.                     m = j;                // запоминаем его индекс
  11.             kk = ms[u][m];
  12.             ms[u][m] = ms[u][i];            // замена выбранного и меньшего
  13.             ms[u][i] = kk;
  14.         }
  15.     }
  16. }
  17.  
  18. int main()
  19. {
  20.     setlocale(LC_ALL, "Russian");
  21.     int n;
  22.     printf("Введите размерность матрицы\n");
  23.     scanf("%d", &n);
  24.     int **a = (int **)malloc(n * sizeof(int *));
  25.     for (int i = 0; i < n; i++) {
  26.         a[i] = (int *)malloc(n * sizeof(int));
  27.     }
  28.     printf("Введите матрицу\n");
  29.     for (int i = 0; i < n; i++) {
  30.         for (int j = 0; j < n; j++) {
  31.             scanf("%d", &a[i][j]);
  32.         }
  33.     }
  34.     Sort1(n, a);
  35.     for (int i = 0; i < n; i++) {
  36.         for (int j = 0; j < n; j++) {
  37.             printf("%3d", a[i][j]);
  38.         }
  39.     }
  40. }
Add Comment
Please, Sign In to add comment