Сортировка столбцов матрицы по возрастанию элементов первой строки

Заполните и выведите матрицу на экран. Измените порядок столбцов матрицы таким образом, чтобы элементы первой строки матрицы были отсортированы по возрастанию. Выведите результат на экран.

from random import randint

# заполнение матрицы
M = 5
N = 3
matrix = []
for i in range(N):
    row = []
    for j in range(M):
        row.append(randint(10, 99))
    matrix.append(row)

# построчный вывод матрицы
for i in matrix:
    print(i)
print()

# Используется метод сортировки выбором.
k = M - 1
while k > 0:

    # Ищется индекс максимального элемента
    # первой строки на отрезке индексов
    # до k включительно.
    ind = 0
    for j in range(1, k+1):
        if matrix[0][j] > matrix[0][ind]:
            ind = j

    # Обмен значений между всеми элементами
    # двух столцов: с индексом ind и k.
    for i in range(N):
        b = matrix[i][ind]
        matrix[i][ind] = matrix[i][k]
        matrix[i][k] = b

    k -= 1

for i in matrix:
    print(i)
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: