Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * Kordan C++ ********************************************************
- * Программа определения максимального и минимального значения чисел *
- * в заданном диапазоне и сортировка методом пузырька *
- * *******************************************************************
- */
- #include <iostream>
- #include <cstdlib> // содержит srand() и rand()
- #include <ctime> // содержит time()
- using namespace std;
- int FillArray (int arr[], const int size, const int min_range, const int max_range);
- int FindMinValueArray (int arr[], const int size);
- int FindMaxValueArray (int arr[], const int size);
- void bubbleSort (int arr[], int size);
- int main () {
- setlocale (LC_ALL, "RUS");
- // Количество чисел в массиве
- const int SIZE = 20;
- // Минимальное число в массиве
- const int MIN_RANGE = 2;
- // Максимальное число в массиве
- const int MAX_RANGE = 100;
- int list[SIZE];
- if (FillArray (list, SIZE, MIN_RANGE, MAX_RANGE) != 1) {
- cout << "Минимальное значение: " << FindMinValueArray (list, SIZE) << '\n';
- cout << "Максимальное значение: " << FindMaxValueArray (list, SIZE) << '\n';
- bubbleSort (list, SIZE);
- cout << "\nСортировка: ";
- for (int i = 0; i < SIZE; i++) cout << list[i] << " ";
- }
- cout << endl << endl;
- //system ("pause");
- return 0;
- }
- // -- begin -----------------------------------------------------------------------
- // Kordan С++ -
- // Функция сортировки методом пузырька -
- // -
- // Аргументы функции: -
- // arr[] - Имя массива -
- // size - Размер массива -
- // -
- // сортировка по возрастанию - знак в условии < -
- // сортировка по убыванию - знак в условии > -
- // --------------------------------------------------------------------------------
- void bubbleSort (int arr[], const int size) {
- int tmp, i, j;
- for (i = 0; i < size - 1; i++) {
- for (j = 0; j < size - 1; j++) {
- if (arr[j + 1] < arr[j]) {
- tmp = arr[j + 1];
- arr[j + 1] = arr[j];
- arr[j] = tmp;
- }
- }
- }
- }
- // -- end --
- // -- begin -----------------------------------------------------------------------
- // Kordan С++ -
- // Функция заполнения массива случайными целочисленными числами в диапазоне чисел -
- // -
- // Необходимо подключить: -
- // #include <cstdlib> (содержит srand() и rand()) -
- // #include <ctime> (содержит time()) -
- // -
- // Аргументы функции: -
- // arr[] - Имя массива -
- // size - Размер массива -
- // min_range - Минимальное значение диапазона -
- // max_range - Максимальное значение массива -
- // --------------------------------------------------------------------------------
- int FillArray (int arr[], const int size, const int min_range, const int max_range) {
- // Автоматическая рандомизация
- srand (time (0));
- for (int i = 0; i < size; i++) {
- if (min_range <= max_range) arr[i] = min_range + rand () % (max_range + 1 - min_range);
- else {
- cout << "Ошибка!\nМаксимальное значение диапазона чисел должно быть больше минимального!\n";
- return 1;
- }
- }
- }
- // -- end --
- // -- begin -------------------------------------------------------------
- // Kordan C++ -
- // Функция поиска минимального целочисленного значения в массиве чисел -
- // -
- // Аргументы функции: -
- // arr[] - Имя массива -
- // size - Размер массива -
- //-----------------------------------------------------------------------
- int FindMinValueArray (int arr[], const int size) {
- int min = arr[0];
- for (int i = 1; i < size; i++)
- if (min > arr[i]) min = arr[i];
- return min;
- }
- // -- end --
- // -- begin -------------------------------------------------------------
- // Kordan C++ -
- // Функция поиска максимального целочисленного значения в массиве чисел -
- // -
- // Аргументы функции: -
- // arr[] - Имя массива -
- // size - Размер массива -
- //-----------------------------------------------------------------------
- int FindMaxValueArray (int arr[], const int size) {
- int max = arr[0];
- for (int i = 0; i < size; i++)
- if (max < arr[i]) max = arr[i];
- return max;
- }
- // -- end --
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement