
Вопрос задан 16.03.2021 в 03:49.
Предмет Информатика.
Спрашивает Лысова Вика.
Дан массив целых чисел. Пользователь вводит с экрана кол-во элементов в массиве. Элементы в массиве
генерируются случайно (диапазон чисел от -100 до +100). Отсортировать исходный массив с помощью различных алгоритмов сортировки. C++

Ответы на вопрос

Отвечает Асқаров Ахмет.
N - кол-во элементов массива mas - массив 1) Пузырек for (int I = 0; I < n; I++) If (mas [i] > mas [i + 1]) swap (mas [i], mas [i+1]); 2) сортировка слиянием



Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Конечно, вот пример программы на C++, которая выполняет сортировку массива с использованием различных алгоритмов сортировки:
cpp#include <iostream>
#include <vector>
#include <algorithm>
// Функция для вывода элементов массива на экран
void printArray(const std::vector<int>& arr) {
for (int num : arr) {
std::cout << num << " ";
}
std::cout << std::endl;
}
int main() {
int n;
std::cout << "Введите количество элементов в массиве: ";
std::cin >> n;
// Генерация случайных чисел и заполнение массива
std::vector<int> arr(n);
for (int i = 0; i < n; ++i) {
arr[i] = rand() % 201 - 100; // Генерация чисел от -100 до +100
}
std::cout << "Исходный массив: ";
printArray(arr);
// Сортировка с использованием различных алгоритмов
std::vector<int> arrBubble = arr; // Для пузырьковой сортировки
std::vector<int> arrSelection = arr; // Для сортировки выбором
std::vector<int> arrInsertion = arr; // Для сортировки вставками
std::vector<int> arrQuick = arr; // Для быстрой сортировки
// Пузырьковая сортировка
for (int i = 0; i < n - 1; ++i) {
for (int j = 0; j < n - i - 1; ++j) {
if (arrBubble[j] > arrBubble[j + 1]) {
std::swap(arrBubble[j], arrBubble[j + 1]);
}
}
}
// Сортировка выбором
for (int i = 0; i < n - 1; ++i) {
int minIndex = i;
for (int j = i + 1; j < n; ++j) {
if (arrSelection[j] < arrSelection[minIndex]) {
minIndex = j;
}
}
std::swap(arrSelection[i], arrSelection[minIndex]);
}
// Сортировка вставками
for (int i = 1; i < n; ++i) {
int key = arrInsertion[i];
int j = i - 1;
while (j >= 0 && arrInsertion[j] > key) {
arrInsertion[j + 1] = arrInsertion[j];
--j;
}
arrInsertion[j + 1] = key;
}
// Быстрая сортировка
std::sort(arrQuick.begin(), arrQuick.end());
// Вывод отсортированных массивов
std::cout << "Отсортированный массив (пузырьковая сортировка): ";
printArray(arrBubble);
std::cout << "Отсортированный массив (сортировка выбором): ";
printArray(arrSelection);
std::cout << "Отсортированный массив (сортировка вставками): ";


Топ вопросов за вчера в категории Информатика

Информатика 2132

Информатика 63

Информатика 14

Информатика 32

Информатика 19

Информатика 15

Информатика 175

Информатика 31

Информатика 48
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili