C/C++

КОНТРОЛЬНЫЕ ЗАДАНИЯ ПО СОРТИРОВКЕ МАССИВОВ

Всем привет, помогите пожалуйста с контрольным заданием:
Разработать программу вычислительного эксперимента для исследования
характеристик эффективности сортировки прямого выбора. Проверить совпадение
модельных представлений и результатов вычислительного эксперимента.
Предусмотреть вывод исходной и результирующей информации в файл.
Оценить сложность программы.
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <ctime>
using namespace std;

void init_array(int* A, unsigned n, unsigned a, unsigned b);
void print_array(int* A, unsigned n);
unsigned selection_sort(int* A, unsigned n);

int main()
{
setlocale(LC_ALL, "RUS");
srand((unsigned)time(0));
ofstream fout("output.txt");
for (unsigned i = 1000U; i <= 100000U; i += 10000U)
{
int* A = new int[i + 1];
for (unsigned j = 100U; j <= 100000U; j += 10000U)
{
init_array(A, i, 1U, j);
fout << "Количество элементов:" << i << ' ';
fout << "Отрезок: [1;" << j << "]" << ' ';
fout << "Время:" << selection_sort(A, i) << endl;
cout << '.';
}
delete[] A;
cout << endl;
} cout << endl;
fout.close();
cout << "Нажмите клавишу Enter для продолжения...";
cin.get(); //cin.get();
return 0;
}

void init_array(int* A, unsigned n, unsigned a, unsigned b)
{
for (unsigned i = 1; i <= n; i++)
A[i] = a + rand() % b;
}

void print_array(int* A, unsigned n)
{
for (unsigned i = 1; i <= n; i++)
{
cout << A[i] << ' ';
} cout << endl;
}

unsigned selection_sort(int* A, unsigned n)
{
unsigned t = clock();
for (unsigned i = 1; i <= n; i++)
for (unsigned j = i + 1; j <= n; j++)
if (A[j] < A[i])
{
A[j] = A[i] + A[j];
A[i] = A[j] - A[i];
A[j] = A[j] - A[i];
}
return clock() - t;
}
Bogdan Kurochka
Bogdan Kurochka
11 953
Лучший ответ
Юлдаш Ураксин спасибо)))