Разработать программу для сортировки текстового файла, используя:
Подпрограммы сортировки реализовать в отдельном модуле.
Имена файлов передаются через параметры программы.
Для защиты лабораторной работы потребуется определить как меняется время сортировки массива в зависимости от следующих параметров:
Замеры времени необходимо проводить на данных большого объёма (от 1000 чисел).
Класс | Имя | Смысл | Тип | Структура |
---|---|---|---|---|
Входные данные | NameOfInputFile | Имя входного файла | string | простая переменная |
NameOfOutputFile | Имя выходного файла | string | простая переменная | |
Выходные данные | Новый файл с именем NameOfOutputFile, в котором размещены данные из файла NameOfInputFile в отсортированном порядке |
В файле должны быть только целые числа, которые должны разделяться пробелами или переводами строки. После последнего числа не должно быть никаких лишних знаков.
Не рассматриваем.
№ теста | Входные данные | Ожидаемые результаты | Смысл теста |
---|---|---|---|
1 |
Содержимое входного файла: 0 2 5 9 19 |
Содержимое выходного файла: 0 2 5 9 19 |
Числа расположены в правильном порядке. |
2 |
Содержимое входного файла: 55 48 42 31 24 13 |
Содержимое выходного файла: 13 24 31 42 48 55 |
Числа расположены в обратном порядке. |
3 |
Содержимое входного файла: 3 5 56 12 1 44 |
Содержимое выходного файла: 1 3 5 12 44 56 |
Числа расположены в случайном порядке. |
4 |
Содержимое входного файла: 8 23 5 65 44 10 1 12 55 |
Содержимое выходного файла: 1 5 8 10 12 23 44 55 65 |
Числа расположены в случайном порядке. |
Для того чтобы хорошо протестировать программу сортировки, а также сравнить время, затрачиваемое на сортировку различными алгоритмами, необходимо тестировать программу на исходных данных больших объемов. Вы можете загрузить файлы с исходными данными, содержащими 1000 чисел в прямом порядке, 5000 чисел в прямом порядке, 10000 чисел в прямом порядке, 20000 чисел в прямом порядке, 1000 чисел в обратном порядке, 5000 чисел в обратном порядке, 10000 чисел в обратном порядке, 20000 чисел в обратном порядке, 1000 чисел в случайном порядке, 5000 чисел в случайном порядке, 10000 чисел в случайном порядке, 20000 чисел в случайном порядке, 1000 чисел с частичным порядком, 5000 чисел с частичным порядком, 10000 чисел с частичным порядком, 20000 чисел с частичным порядком.
Методы сортировки были рассмотрены на лекции.