ПОМОГИТЕ ПОЖАЛУЙСТА, ИНФОРМАТИКУ ВООБЩЕ НЕ ПОНИМАЮ.Написать следующую программу на С++.1.  Ввести натуральное N больше 1, а затем ввести массив вещественных чисел длинны N.2.   Нужно запрограммировать алгоритм с...

               ПОМОГИТЕ ПОЖАЛУЙСТА, ИНФОРМАТИКУ ВООБЩЕ НЕ ПОНИМАЮ. Написать следующую программу на С++. 1.   Ввести натуральное N > 1, а затем ввести массив вещественных чисел длинны N. 2.   Нужно запрограммировать алгоритм сортировки массива вещественных чисел в виде подпрограммы и продемонстрировать («распечатать»-записать в файл) результат сортировки. В качестве алгоритма сортировки выбрать простой метод «пузырька».
Гость
Ответ(ы) на вопрос:
Гость
2)// bu_sort.cpp: определяет точку входа для консольного приложения.  #include "stdafx.h"#include #include #include using namespace std;  void bubbleSort(int *, int); // прототип функции сортировки пузырьком int main(int argc, char* argv[]) {    srand(time(NULL));    setlocale(LC_ALL, "rus");    cout << "Введите размер массива: ";     int size_array; // длинна массива    cin >> size_array;     int *sorted_array = new int [size_array];  // одномерный динамический массив     for (int counter = 0; counter < size_array; counter++)     {         sorted_array[counter] = rand() % 100;  // заполняем массив случайными числами         cout << setw(2) << sorted_array[counter] << "  ";  // вывод массива на экран     }     cout << "\n\n";      bubbleSort(sorted_array, size_array);  // вызов функции сортировки пузырьком      for (int counter = 0; counter < size_array; counter++)     {         cout << setw(2) << sorted_array[counter] << "  ";  // печать отсортированного массива     }    cout << "\n";      system("pause");     return 0;}  void bubbleSort(int* arrayPtr, int length_array)  // сортировка пузырьком{ int temp = 0;  // временная переменная для хранения элемента массива bool exit = false;  // болевая переменная для выхода из цикла, если массив отсортирован  while (!exit) // пока массив не отсортирован {  exit = true;  for (int int_counter = 0; int_counter < (length_array - 1); int_counter++)  // внутренний цикл     //сортировка пузырьком по возрастанию - знак >     //сортировка пузырьком по убыванию - знак <    if (arrayPtr[int_counter] > arrayPtr[int_counter + 1])  // сравниваем два соседних элемента     {     // выполняем перестановку элементов массива     temp = arrayPtr[int_counter];      arrayPtr[int_counter] = arrayPtr[int_counter + 1];      arrayPtr[int_counter + 1] = temp;      exit = false; // на очередной итерации была произведена перестановка элементов    }  } }
Не нашли ответ?
Ответить на вопрос
Похожие вопросы