
- •Содержание
- •Глава 1 теоретическая чась 3
- •Глава 2 практическая часть 23
- •Введение
- •Глава 1 теоретическая чась
- •Структура и общая технологическая схема производства
- •1.2 Электронные информационные (безбумажные) технологии управления на предприятии
- •1.2.1 Уровни автоматизации управления на предприятии
- •1.2.2 Информационные технологии управления предприятием
- •1.2.3 Электронное документационное управление предприятием
- •1.2.4 Автоматизация процессов делопроизводства на предприятии
- •1.3 Производственные задачи с использованием Internet, использование ресурсов Интернет в работе предприятия
- •1.3.1 Организация обмена информацией в сети предприятия (перечень задач, оценка в % от общего объёма)
- •1.3.2 Топология, структура сети, используемое сетевое оборудование корпоративной сети предприятия
- •1.3.3 Организация и оценка уровня и эффективности системы защиты информации на предприятии
- •1.3.4 Оценка экономической эффективности применения информационных технологий и систем на предприятии
- •1.4 Организация хранения и поиска экономической информации (классификация субд, использование субд в управлении экономической и производственной деятельностью предприятия)
- •1.5 Выводы и рекомендации по совершенствованию информационной структуры, обеспечения предприятия
- •Глава 2 практическая часть
- •2.1 Индивидуальное задание
- •2.1.1 Постановка задачи
- •2.1.2 Выбор языка программирования
- •2.1.3 Определение структуры данных
- •2.1.4 Алгоритм решения задачи
- •2.1.5 Тестирование программы
- •2.1.6 Руководство пользователя
- •Список использованных источников
Глава 2 практическая часть
2.1 Индивидуальное задание
2.1.1 Постановка задачи
Необходимо написать программу, сортирующую по возрастанию последний столбец двумерного массива целых чисел. Использовать сортировку Шелла. Массив создать из случайных чисел, расположенных в интервале {4,67}.
2.1.2 Выбор языка программирования
В качестве среды разработки программы была выбрана система программирования Borland C++ Builder. Borland C++ Builder, сегодня является наиболее совершенной визуальной средой быстрой разработки на С++ для Windows. В ее состав входит около 200 самых разных компонентов, а создание законченной программы требует минимума усилий. Эффективность программ, создаваемых с помощью C++ Builder, в десятки раз превосходит быстродействие программ, написанных на MS Visual Basic
Система содержит Библиотеку из более 100 повторно используемых визуальных компонент, которые перетаскиваются мышью на форму и сразу становятся элементами управления прототипа вашей программы. Помимо известных элементов управления Windows (кнопки, линейки прокрутки, поля редактирования, простые и комбинированные списки и т.д.) Библиотека содержит новые компоненты поддержки диалогов, обслуживания баз данных и многие другие.
C++ Builder поддерживает основные принципы объектно-ориентированного программирования – инкапсуляцию, полиморфизм и множественное наследование, а также нововведенные спецификации и ключевые слова в стандарте языка C++.
C++ Builder поддерживает связь с различными базами данных 3-х видов: dBASE и Paradox: Sybase, Oracle, InterBase и Informix; Excel, Access, FoxPro и Btrieve. Механизм BDE (Borland Database Engine) придает обслуживанию связей с базами данных удивительную простоту и прозрачность. Проводник Database Explorer позволяет изображать связи и объекты баз данных графически.
Благодаря средствам управления проектами, двусторонней интеграции приложения и синхронизации между средствами визуального и текстового редактирования, а также встроенному отладчику – C++ Builder корпорации Borland предоставляет собой впечатляющую среду разработки.
2.1.3 Определение структуры данных
2.1.4 Алгоритм решения задачи
Сортировка Шелла — алгоритм сортировки, являющийся усовершенствованным вариантом сортировки вставками. Идея метода Шелла состоит в сравнении элементов, стоящих не только рядом, но и на определённом расстоянии друг от друга. Иными словами — это сортировка вставками с предварительными «грубыми» проходами.
Метод Шелла является усовершенствованием метода простого включения, который основан на том, что включение использует любой частичный порядок. Но недостатком простого включения является то, что во внутреннем цикле элемент A[i] фактически сдвигается на одну позицию. И так до тех пор, пока он не достигнет своего места в отсортированной части. (На самом деле передвигалось место, оставленное под A[i]). Метод Шелла позволяет преодолеть это ограничение следующим интересным способом. Вместо включения A[i] в подмассив предшествующих ему элементов, его включают в подсписок, содержащий элементы A[i – h], A[i – 2h], A[i – 3h] и так далее, где h – положительная константа. Таким образом, формируется массив, в котором «h-серии» элементов, отстоящие друг от друга на h, сортируются отдельно. Конечно, этого недостаточно: процесс возобновляется с новым значением h, меньшим предыдущего. И так до тех пор, пока не будет достигнуто значение h = 1.
Метод, предложенный Дональдом Л. Шеллом, является неустойчивой сортировкой по месту. Эффективность метода Шелла объясняется тем, что сдвигаемые элементы быстро попадают на нужные места. Среднее время для сортировки Шелла равняется O(n^1.25), для худшего случая оценкой является O(n^1.5). Также следует сказать, что дополнительной памяти данный алгоритм не требует, но и не гарантирует сохранение порядка элементов с одинаковыми значениями.
Блок-схема