Часть полного текста документа:Сортировка массива методом Шелла Отчёт по практике Выполнили: cт.гр. 97ЭЭ3 Толмач М., Ерегин П., Синева Т. Пензенский государственный университет, Кафедра "Экономическая кибернетика" Пенза 1998 г. Задание Цель работы: изучить метод Шелла для сортировки строкового массива и применить этот метод на практике. Заданием на практическую работу является разработка программы на языке программирования Borland С++ v.3.1. для сортировки массива строк по их индексному значению. Значения элементов массива и их индексы задаются пользователем с клавиатуры. Введение В настоящее время индустрия производства компьютеров и программного обеспечения для них является одной из наиболее важных сфер экономики развитых стран. Ежегодно в мире продаются десятки миллионов компьютеров. Только в США объем продаж компьютеров составляет десятки миллионов долларов и постоянно продолжает расти. В чем же причины такого стремительного роста индустрии персональных компьютеров и их сравнительная выгодность для многих деловых применений? Простота использования, обеспеченная с помощью диалогового способа взаимодействия с компьютером. Относительно высокие возможности по переработке информации, наличие программного обеспечения, а так же мощных систем для разработки нового программного обеспечения. Язык С++ - универсальный язык общего назначения, область приложений которого - программирование систем в самом широком смысле. Кроме этого, С++ успешно используется как во многих приложениях, так и в мощных операционных системах. 1 Входные данные Входными данными в программе является число элементов массива, значение индекса каждого элемента и строковые элементы массива. Все эти данные вводятся пользователем с клавиатуры по запросу программы. Число элементов массива не должно превышать 32767. Индексы элементов массива должны быть целочисленными значениями. 2 Выходные данные Выходными данными в программе является исходный и отсортированный методом Шелла массив, которые выводятся на экран по запросу пользователя. 3 Архитектура программы Данная программа разработана на языке программирования С++ и состоит из следующих функциональных модулей: 1) menu - обработчик меню; 2) input - ввод данных; 3) output - вывод данных; 4) sort - сортировка Шелла; 5) Основная программа. 1.Функция menu: Осуществляет вывод на экран меню , опрос клавиатуры в бесконечном цикле и передвижение цветного курсора по пунктам меню. При нажатии клавиши 'Esc' возвращает -1, при нажатии клавиши с номером пункта меню возвращает этот номер, при нажатии клавиши 'Enter' возвращает номер текущего пункта меню. Параметры для вызова функции menu: x,y - координаты меню на экране, *capt - содержимое меню. 2.Функция input: Осуществляет ввод индексов и элементов массива с клавиатуры, возвращает количество введенных элементов. Параметры для вызова функции mas[] -указатель на массив, stn - номер первого вводимого элемента. 3.Функция output: Осуществляет вывод содержимого массива на экран. Параметры для вызова функции mas[] -указатель на массив, num - число элементов массива. 4.Функция sort: Осуществляет сортировку массива по индексам элементов методом Шелла. Сортировка методом Шелла заключается в следующем: сначала отдельно группируются и сортируются элементы, отстоящие друг от друга на расстоянии 9. ............ |