Задание
Разработать программу-стенд для исследования различных алгоритмов сортировки. Программа должна производить сортировку одномерного массива размером 1000 элементов (байт). В процессе работы алгоритма сортировки должен производиться вывод сортируемого массива на экран. Элементы массива выводятся на экран в виде символов код которых соответствует значению элемента. Изначально массив заполняется случайным образом. Сортировка производится по возрастанию или убыванию одним из трёх алгоритмов.
• Сортировка «пузырьком»
• Сортировка вставкой (или исключением)
• Быстрая сортировка Хоара (QuickSort)
Алгоритм и направление сортировки задаётся пользователем в командной строке запуска программы.
Формат командной строки
В квадратных скобках указываются необязательные параметры.
Для сортировки:
ИмяПрограммы /Тип [/Desc]
Для получения информации о программе и возможных параметрах
ИмяПрограммы /?
Параметры командной строки
Тип сортировки:
/Bubble - Сортировка «пузырьком»
/Insert - Сортировка вставкой (или исключением)
/Quick - Быстрая сортировка Хоара (QuickSort)
/Desc - Необязательный параметр. Указывает, что сортировка производится по убыванию. Если параметр опущен, сортировка производится по возрастанию.
/? - при запуске программы с данным ключом производится вывод информации
Возможные параметры командной строки.
Автор(ы) программы
Ошибки
Программа должна обрабатывать ошибки и выдавать пользователю сообщение, в следующих ситуациях:
• Неизвестный параметр.
Рекомендации
• Выполнять лабораторную работу в стиле структурного программирования.
• Алгоритмы сортировок оформить в виде отдельных процедур
• Процедуры сортировок сделать универсальными для сортировки по возрастанию и убыванию. Для этого операцию сравнения выполнить в виде отдельной функции, которая в зависимости от выбранного направления сравнивает на «больше» или на «меньше»
• При отображении процесса сортировки на экран перерисовывать только меняемые в данный момент времени символы. (Все сортировки на каждом шаге меняют только одну пару элементов, их и перерисовывать).
• Для выполнения предыдущего пункта рекомендуется сделать функцию «обмен местами двух элементов массива», которая будет производить обмен и отрисовку на экране.
Пишите в icq: 70010. Спасибо за помощь!
Лаба по сортировкам, первому - 6знак с примари |