C++. Воплотить программку, которая воспринимает на вход количество частей массива, выполняет

C++. Реализовать программу, которая воспринимает на вход количество частей массива, исполняет генерацию 3 массивов отсортированных по возрастанию, по убыванию и случайным образом соответственно. Сортирует каждый из массивов используя сортировку "выбором". После выполнения выводит данные отчета по выполнению сортировки в формате: как отсортирован массив, время, занявшее на сортировку каждым из способов.

Задать свой вопрос
Геннадий
Исправлено
1 ответ
Не очень понятно, что значит "время, занявшее на сортировку каждым из способов" - способ в задании всего 1.

Программке нужно сказать количество частей в массиве, после этого она выведет нужную информацию. Если нужен вывод самих массивов, раскомментируйте подходящие строчки.

include lt;iostreamgt;
include lt;ctimegt;
include lt;cstdlibgt;
include lt;locale.hgt;
 
void selection_sort(int *arr, int n, std::string name)

    /*std::cout lt;lt; "Неотсортированный массив " lt;lt; name lt;lt; std::endl;
    for (int i = 0; i lt; n; i++)
        std::cout lt;lt; arr[i] lt;lt; " ";
    std::cout lt;lt; std::endl;*/
    std::clock_t c_start = std::clock();
    for (int i = 0; i lt; n - 1; i++)
   
        int ind_min = i;
        for (int j = i + 1; j lt; n; j++)
            if (arr[j] lt; arr[ind_min]) ind_min = j;
        if (ind_min != i)
            int t = arr[ind_min];
            arr[ind_min] = arr[i];
            arr[i] = t;
       
   
    std::clock_t c_end = std::clock();
    std::cout lt;lt; "Отсортированный массив " lt;lt; name lt;lt; " (сортировка выбором)"lt;lt; std::endl;
    /*for (int i = 0; i lt; n; i++)
        std::cout lt;lt; arr[i] lt;lt; " ";
    std::cout lt;lt; std::endl;*/
    float time = 1000.0 * (c_end-c_start) / CLOCKS_PER_SEC;
    std::cout lt;lt; "Медли затрачено: " lt;lt; time lt;lt; " мс" lt;lt; std::endl;

 
int main()

    setlocale(LC_ALL, "rus");
    int n;
    std::cout lt;lt; "Число элементов массива: ";
    std::cin gt;gt; n;
    int *arr = new int[n];
    arr[0] = 0;
    for (int i = 1; i lt; n; i++)
        arr[i] = arr[i-1] + rand() % 3;
    selection_sort(arr, n, "[Отсортирован по возрастанию]");
    arr[0] = 10000;
    for (int i = 1; i lt; n; i++)
        arr[i] = arr[i-1] - rand() % 3;
    selection_sort(arr, n, "[Отсортирован по убыванию]");
    for (int i = 0; i lt; n; i++)
        arr[i] = rand() % 10000;
    selection_sort(arr, n, "[Случайный массив]");
    return 0;

Пример работы:
Число частей массива: 30000
Отсортированный массив [Отсортирован по возрастанию] (сортировка выбором)
Медли затрачено: 1760 мс
Отсортированный массив [Отсортирован по убыванию] (сортировка выбором)
Медли затрачено: 2838 мс
Отсортированный массив [Случайный массив] (сортировка выбором)
Времени затрачено: 1789 мс
Alla Gamylova
Программка выводит: Затрачено 0 мс
Korieva Arina
И так при любом количестве частей в массиве
, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы
задание экономиоти Рассмотри ситуацию: человек живёт на Крайнем Се-вере. С помощью каких

Экономика.

Человек живет на Крайнем Севере. С помощью каких благ удовлетворяются потребности

Экономика.

там лежат три яйца.у дома рос клен.Это гнездо сойки.на клёне гнездо

Русский язык.

Тыныштық күйіндегі карусель 35 с-та 3,0 рад/с бұрыштық жылдамдықпен үдей қозғалады.

Разные вопросы.

Сочинение на тему "Русский язык не сможет умереть!"

Математика.

Приветствую! Меня зовут Станислав, я представляю компанию under.site. Хотел бы предложить интересное решение

Разные вопросы.

Масса трёх одинаковых пакетов чая 180г чему равна масса

Математика.

Газообразный аммиак объёмом 2.24 л (н.у.) был полностью поглощён 14.68 мл

Химия.

Упражнение 2 Выпишите глаголы и вставьте пропущенные буквы

Русский язык.

Радиус окружности, описанной около равностороннего треугольника, равен 6. Найдите сторону треугольника

Геометрия.

Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт