Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Ход выполнения лабораторной работы




Небольшая хитрость при сортировке: отсортировать массив в обе стороны при помощи одного алгоритма (и соответственно, одной и той же подпрограммы) можно, если при сортировке в непредусмотренную алгоритмом сторону, сначала умножить каждый элемент массива на -1, что поменяет его знак, а затем, после сортировки, снова умножить их на -1, вернув знак в первоначальное состояние.

Чтобы заполнить массив случайными числами нужно использовать генератор случайных чисел. Простейший генератор – rand()%N, где N – количество случайно получаемых чисел. Таким образом эта команда будет выдавать случайное число от 0 до N-1. Однако, в таком случае числа при каждом запуске будут одинаковыми. Чтобы числа отличались, следует проделать целый ряд действий. Сначала подключить библиотеку ctime. Затем использовать команду srand с аргументом time(0) (т.е. полностью строка выглядит как srand (time(0));). Эта строка, своего рода аналог команды randomize из Паскаля, включающая настоящую рандомизацию. И вот после неё уже можно полноценно использовать команду rand(), получая при каждом запуске разные числа.


 

Задание:

1. Реализовать все 4 изученных метода сортировки, а также заполнение массива и вывод его на экран, в виде отдельных подпрограмм.

2. Реализовать подсчёт выполненных действий каждой из сортировок. За отдельное действие следует считать каждое сравнение элементов и каждую перестановку их местами.

3. Реализовать меню, позволяющее пользователю выбрать метод и направление сортировки. Так же должен быть пункт, сортирующий один массив всеми методами и сравнивающий эффективность.

4. Зациклить программу до тех пор, пока пользователь не нажмёт «выход».

5. Написать отчёт.

 

Отчёт должен содержать: титульный лист (образец в конце методички), код программы, блок-схему и ответы на вопросы со следующей страницы.


Вопросы на защиту:

Что такое подпрограммы? Какие они бывают и чем отличаются?

Ответ: ____________________________________________
__________________________________________________
__________________________________________________

Что такое параметры подпрограмм и зачем они нужны?

Ответ: ____________________________________________
__________________________________________________
__________________________________________________

В больших программах следует избегать использования подпрограмм или стремиться к нему? Почему?

Ответ: ____________________________________________
__________________________________________________
__________________________________________________

Что такое эффективность сортировки?

Ответ: ____________________________________________
__________________________________________________
__________________________________________________

 

Работу написал Работу проверил






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных