
Задание на языке С++: Просматриваем массив начиная с первого индекса, по пути сравниваем соседние
элементы. Если находим неотсортированную пару - меняем местами, возвращаемся в начало массива и повторяем те же действия. Процесс заканчивается, если во время полного прохода не обнаружено ни одной неотсортированной пары.

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

Ответ:
#include <iostream>
using namespace std;
int main()
{
int arr[]{10,8,3,9,15,25,38};
int buff; // временная переменная для обмена элементов местами
// Сортировка массива пузырьком
for (int i = 0; i < size - 1; i++) {
for (int j = 0; j < size - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
// меняем элементы местами
buff = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = buff;
}
}
}
// Вывод отсортированного массива на экран
for (int i = 0; i < size; i++)
{
cout << arr[i] << " ";
}
cout << endl;
return 0;
}



Вы можете реализовать алгоритм сортировки пузырьком (Bubble Sort) в C++ для выполнения указанных действий. Вот пример кода:
cpp#include <iostream>
void bubbleSort(int arr[], int n) {
bool swapped;
do {
swapped = false;
for (int i = 1; i < n; ++i) {
if (arr[i - 1] > arr[i]) {
// Меняем местами неотсортированную пару
std::swap(arr[i - 1], arr[i]);
swapped = true;
}
}
} while (swapped);
}
int main() {
int arr[] = {4, 2, 9, 1, 5, 6};
int n = sizeof(arr) / sizeof(arr[0]);
std::cout << "Исходный массив: ";
for (int i = 0; i < n; ++i) {
std::cout << arr[i] << " ";
}
std::cout << std::endl;
bubbleSort(arr, n);
std::cout << "Отсортированный массив: ";
for (int i = 0; i < n; ++i) {
std::cout << arr[i] << " ";
}
std::cout << std::endl;
return 0;
}
Этот код реализует сортировку пузырьком и будет продолжать сравнивать и обменивать элементы, пока не пройдет через массив без выполнения ни одной замены (то есть пока массив не будет отсортирован).


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







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