Untitled

Run Settings
LanguageC
Language Version
Run Command
#include <stdio.h> #include <stdlib.h> #include <time.h> #include <locale.h> #define SIZE 25 // Функція для обміну двох елементів void swap(int* a, int* b) { int temp = *a; *a = *b; *b = temp; } // Функція швидкого сортування (за спаданням) void quickSort(int arr[], int low, int high) { if (low < high) { int pivot = arr[high]; // вибір опорного елементу int i = low - 1; for (int j = low; j < high; j++) { if (arr[j] > pivot) { // > для спадання i++; swap(&arr[i], &arr[j]); } } swap(&arr[i + 1], &arr[high]); int pi = i + 1; quickSort(arr, low, pi - 1); quickSort(arr, pi + 1, high); } } // Функція для заповнення масиву випадковими числами void fillRandom(int arr[], int size) { srand(time(NULL)); for (int i = 0; i < size; i++) { arr[i] = rand() % 100; // числа від 0 до 99 } } // Функція для заповнення масиву з клавіатури void fillUserInput(int arr[], int size) { printf("Введiть %d елементiв:\n", size); for (int i = 0; i < size; i++) { printf("arr[%d] = ", i); scanf("%d", &arr[i]); } } // Функція для виводу масиву void printArray(int arr[], int size) { for (int i = 0; i < size; i++) { printf("%d ", arr[i]); } printf("\n"); } // Головна функція int main() { setlocale(LC_CTYPE, "ukr"); int arr1[SIZE]; int arr2[SIZE]; // Робота з випадковим масивом printf("Випадковий масив:\n"); fillRandom(arr1, SIZE); printArray(arr1, SIZE); quickSort(arr1, 0, SIZE - 1); printf("Вiдсортований масив (спадання):\n"); printArray(arr1, SIZE); // Робота з масивом, введеним користувачем printf("\nМасив, введений користувачем:\n"); fillUserInput(arr2, SIZE); printArray(arr2, SIZE); quickSort(arr2, 0, SIZE - 1); printf("Вiдсортований масив (спадання):\n"); printArray(arr2, SIZE); return 0; }
Editor Settings
Theme
Key bindings
Full width
Lines