• Предмет: Информатика
  • Автор: komlukdanulo
  • Вопрос задан 3 месяца назад

Змініть проєкт впорядкування одновимірного масиву методом обміну, щоб
його виконання переривалося, якщо при черговому проходженні масиву
жодного обміну не відбулося. Збережіть проєкт у папці з іменем Завдання 5.3.4, створеній у вашій папці. Поясніть, які саме зміни ви зробили.

Срочно!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


komlukdanulo: Будь ласка допоможіть

Ответы

Ответ дал: mixail0809
2

#include <stdio.h>

#define SIZE 10

int main() {

int arr[SIZE] = {3, 9, 4, 2, 1, 8, 5, 7, 6, 0};

int i, j, temp, swapped;

for (i = 0; i < SIZE - 1; i++) {

swapped = 0; // флаг, который будет фиксировать, был ли произведен обмен на данном проходе

for (j = 0; j < SIZE - i - 1; j++) {

if (arr[j] > arr[j + 1]) {

temp = arr[j];

arr[j] = arr[j + 1];

arr[j + 1] = temp;

swapped = 1; // устанавливаем флаг, если был произведен обмен

}

}

if (!swapped) { // если обмен не был произведен, значит, массив уже упорядочен

break;

}

}

for (i = 0; i < SIZE; i++) {

printf("%d ", arr[i]);

}

return 0;

}

Вас заинтересует