Отсортировать столбцы по убыванию - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Задан двухмерныймассив размерности n. Отсортировать массив, согласно параметров размерность массива

0...25

знак элементов

+

Происхождение элементов массива

случайние

Границы значений переменных

0...25

Условие сортировка

Отсортировать столбцы по убыванию

Решение задачи: «Отсортировать столбцы по убыванию»

textual
Листинг программы
#include <vector>
#include <cstdlib>
#include <ctime>
#include <algorithm>
 
int main(int argc, char *argv[])
{
    std::srand (time(NULL));
    std::vector<std::vector<int>> arr;
    int N = -1;
    while (!(0 <= N && N <= 25))
    {
        std::cin >> N;
    }
    arr.resize(N);
    for (unsigned int i = 0; i < arr.size(); i++)
    {
        arr[i].resize(N);
        for (unsigned int j = 0; j < arr.size(); j++)
            arr[i][j] = std::rand() % 26;
    }
 
    for (unsigned int i = 0; i < arr.size(); i++)
    {
        for (unsigned int j = 0; j < arr.size(); j++)
            std::cout << arr[i][j] << " ";
        std::cout << std::endl;
    }
    std::cout << std::endl;
 
    //Сортировка вставками
    for (unsigned int k = 0; k < arr.size(); k++)
        for(unsigned int i = 1; i < arr.size(); i++)
            for(unsigned int j = i; j > 0 && arr[j - 1][k] < arr[j][k]; j--)
                std::swap(arr[j - 1][k], arr[j][k]);
 
    for (unsigned int i = 0; i < arr.size(); i++)
    {
        for (unsigned int j = 0; j < arr.size(); j++)
            std::cout << arr[i][j] << " ";
        std::cout << std::endl;
    }
 
    return 0;
}

Объяснение кода листинга программы

В этом коде генерируется случайная двумерная матрица (25x25) целых чисел от 0 до 25, и она выводится на экран. Затем происходит сортировка матрицы вставками (с помощью трех вложенных циклов) по убыванию (от большего к меньшему). После сортировки матрица снова выводится на экран.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.8 из 5
Похожие ответы