Дипломная (вкр): Проектирование программы по анализу массива

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Проектирование программы по анализу массива

Введение

Информационные технологии широко применяются в наше время для автоматизации документооборота на различных предприятиях.
Постоянно растет объем и сложность обрабатываемой информации, требуются все новые и новые виды ее представления. Не подлежит сомнению, что организовать поиск, произвести анализ и совершить многие другие операции значительно проще и удобнее, имея дело с электронными документами, чем с печатными.

Программы позволяют обогатить курс обучения, дополняя его разнообразными возможностями компьютерных технологий, и делают его, таким образом, более интересным и привлекательным для учащихся. Исключительно высокая степень наглядности представленного материала, взаимосвязь различных компонентов курсов, комплексность и интерактивность делают программы незаменимыми помощниками, как для ученика, так и для учителя. Практически все развитые страны активно разрабатывают и поддерживают компьютерные технологии обучения. Это вызвано, во-первых, тем, что компьютер стал средством повышения производительности труда во всех сферах деятельности человека, во-вторых, резко возрос объем необходимых знаний и с помощью традиционных способов и методик преподавания уже невозможно подготовить требуемое количество высокопрофессиональных специалистов.

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

Целью моей дипломной работы является создание программы визуализации методов сортировки массива, которая может быть использована при изучении дисциплин, связанных с программированием и алгоритмизацией, для демонстрации методов сортировки массива.

В дипломной работе я использовала среду программирования Delphi. На стадии анализа требований мною был собран весь необходимый теоретический материал для создания программы. На стадии интеграции разработан программный код. На стадии тестирования проводилась проверка работоспособности программы.


1. Теоретическая часть

1.1    Назначение и область применения


Программа позволяет визуально демонстрировать заполнение массива случайным образом и сортировать его различными методами.

Программный продукт предназначен в качестве вспомогательного пособия преподавателям предмета: «Программирование в компьютерных системах». Также программа может использоваться студентами, изучающими данный предмет, для самостоятельной работы.

Программа предназначена для использования в учебных заведениях. Это позволит преподавателям эффективно использовать время урока, повысить мотивацию студентов к изучению программирования.

1.2 Технические характеристики

программа массив пользователь

Постановка задачи

Необходимо создать разработку программного продукта предназначенного для заполнения и сортировки массива.

Разработанный программный продукт должен удовлетворять следующим требованиям:

·    Наличие клавиш для заполнения, сортировки, удаления массива

·        Наличие поля для отображения количества массива;

·        Наличие поля скорости заполнения массива

·        Наличие поля вывода гистограммы

Входными данными являются значения элементов целочисленного массива, сгенерированного случайным образом.

В качестве выходных данных выступают гистограммы, представляющие текущее содержание обрабатываемого массива.

Внешний вид программы должен соответствовать интерфейсу Windows-приложения.

Программный продукт должен быть прост и понятен для работы с ним.

Описание алгоритма

Алгоритм - последовательность чётко определенных действий, выполнение которых ведёт к решению задачи. Алгоритм, записанный на языке машины, есть программа решения задачи.

При разработке своего программного продукта я использовала следующий алгоритм:

1. разработка структуры программного продукта;

2.      сбор информации;

.        выбор среды программирования и разработка интерфейса;

.        создание дизайна программного продукта;

.        создание кнопок и ползунков, при помощи которых осуществляется работа программы;

.        создание поля для вывода гистограммы.

При решении поставленной задачи можно представить схему, отображающую набор действий пользователя при работе с программой.

Пользователю, при входе, предоставляются действия на выбор: заполнение, сортировка массива; просмотр результата сортировки.

Администратор устанавливает программу и имеет доступ к ее исходному коду.

входных и выходных данных

Входными данными являются значения элементов целочисленного массива, сгенерированного случайным образом.

В качестве выходных данных выступают гистограммы, представляющие текущее содержание обрабатываемого массива.

К функциональным особенностям созданной программы можно отнести:

·    возможность заполнения, сортировки, удаления массива;

·        наличие поля для отображения размерности массива;

·        возможность выбора скорости сортировки массива;

·        возможность выбора метода и направления сортировки;

·        возможность фиксирования времени сортировки;

·        визуальное отображение процесса сортировки.

Выбор состава технических и программных средств

Одним из требований для нормальной работы программы является быстродействие системы в целом. При достаточно быстром обмене информацией между процессором и памятью компьютера можно существенно сократить время загрузки страниц и обработки различных запросов. Данное быстродействие можно достигнуть, используя современные процессор и модули памяти.

Для нормального функционирования программного продукта требуется ПК со следующими минимальными характеристиками:

·  центральный процессор с частотой не ниже 1000 MГц;

·        объём оперативной памяти не менее 512 MБ;

·        жесткий диск с объемом свободной памяти не менее 70 МБ;

·        дисковод CD/DVD;

·        манипулятор «мышь»;

·        клавиатура;

·        монитор.

Программа работает в операционной системе Microsoft Windows 7. Операционные системы данного класса являются самыми надежными и популярными.

В качестве программных средств, при разработке программного продукта используется Delphi.- результат развития языка Турбо Паскаль, который, в свою очередь, развился из языка Паскаль. Паскаль был полностью процедурным языком, Турбо Паскаль, начиная с версии 5. 5, добавил в Паскаль объектно-ориентированные свойства, а Delphi - объектно-ориентированный язык программирования с возможностью доступа к метаданным классов (то есть к описанию классов и их членов) в компилируемом коде, также называемом интроспекцией.

Изначально среда разработки Delphi была предназначена исключительно для разработки приложений Microsoft Windows, затем был реализован вариант для платформ Linux (как Kylix), однако после выпуска в 2002 году Kylix 3 его разработка была прекращена, и вскоре было объявлено о поддержке Microsoft.NET, которая, в свою очередь, была прекращена с выходом Delphi 2007.

На сегодняшний день, наряду с поддержкой разработки 32 и 64-разрядных программ для Windows, реализована возможность создавать приложения для Apple Mac OS X (начиная с Embarcadero Delphi XE2), IOS (включая симулятор, начиная с XE4 посредством собственного компиятора), а также, в Delphi XE5, приложения для Google Android (непосредственно исполняемые на ARM процессоре).

Независимая, сторонняя реализация среды разработки проектом Lazarus (Free Pascal, компиляция в режиме совместимости с Delphi) позволяет использовать его для создания приложений на Delphi для таких платформ, как Linux, Mac OS X и Windows CE.

Также предпринимались попытки использования языка в проектах GNU (например, Notepad GNU) и написания компилятора для GCC.

Язык Pascal предназначен для описания вычислительного процесса решения задачи, в состав которой могут входить величины.

программа массив пользователь

Схема 1 - Используемые величины

Константы - данные, значения которых не изменяются в программе.

Переменные - данные, могущие изменяться при выполнении программы.

Для обозначения имен констант, переменных, функций, процедур и модулей используются буквы и цифры, входящие в алфавит языка, и знак подчеркивания «_». Имена начинаются с буквы или знака подчеркивания» _ «и содержат до 63 значащих символов. Символ пробела в имени не допускается. Эти имена принято называть идентификаторами.

Выражения - константы, переменные и обращения к функциям, соединенные знаками операций. Операторы - специальные символы и слова, выполняющие действия.

Функции, процедуры и модули - отдельные программные блоки, имеющие имена и подключаемые к основной программе.

Классы и объекты Delphi. Для реализации интерфейса Delphi использует библиотеку классов, которая содержит большое количество разнообразных классов, поддерживающих форму и различные компоненты формы (командные кнопки, поля редактирования и т.д.).

Во время проектирования формы приложения Delphi автоматически добавляет в текст программы необходимые объекты. Это описание класса Когда программист, добавляя необходимые компоненты, создает форму, Delphi формирует описание класса формы. Когда программист создает функцию обработки события формы или ее компонента, Delphi добавляет объявление метода в описание класса формы приложения.

Помимо классов визуальных компонентов в библиотеку классов входят и классы так называемых невизуальных (невидимых) компонентов, которые обеспечивают создание соответствующих объектов и доступ к их методам и свойствам. Типичным примером невизуального компонента является таймер (тип TTimer) и компоненты доступа и управления базами данных.

Графика языка программирования

Работа с графикой в Delphi это не только линии и рисунки, но также и и печать текстовых документов. Поэтому в Delphi работе с графикой нужно уделить немного времени. Работа сграфикой в Delphi предполагает обращение к канве - свойству Canvas компонентов. Canvas Delphi это холст, который позволяет программисту иметь доступ к каждой своей точке (пикселу), и словно художнику отображать то, что требуется. Конечно, рисовать попиксельно для работы с графикой в Delphi не приходится, система Delphi предоставляет для мощные средства работы с графикой, облегчающие задачу программиста.

В работе с графикой в Delphi в распоряжении программиста находятся канва (холст, полотно - свойство Canvas Delphi компонентов), карандаш (свойство Pen), кисть (свойство Brush) того компонента или объекта, на котором предполагается рисовать. У карандаша Pen и кисти Brush можно менять цвет (свойство Color) и стиль (свойство Style). Доступ к шрифтам предоставляет свойство канвы Font. Эти инструменты позволяют отображать как текст, так и достаточно сложные графики математического и инженерного содержания, а также рисунки. Кроме этого, работа с графикой позволяет использовать в Delphi такие ресурсы Windows как графические и видеофайлы.

Конечно, не все компоненты в Delphi имеют эти свойства. На вкладке Additional расположен специализированный компонент TImage, специально предназначенный для рисования, но также свойство Canvas имеют, например, такие компоненты как ListBox, ComboBox, StringGrid, а также и сама Форма, которая размещает наши компоненты! Кроме того, для печати документов Delphi обращается к свойству Canvas такого объекта как принтер.

Основное свойство такого объекта как Canvas Delphi - Pixels [i, j] типа TColor, то есть это двумерный массив точек (пикселов), задаваемых своим цветом. Рисование на канве происходит в момент присвоения какой-либо точке канвы заданного цвета. Каждому пикселу может быть присвоен любой доступный для Windows цвет. Например, выполнение оператора. Canvas. Pixels [100, 100]:=clRed;

приведёт к рисованию красной точки с координатами [100, 100]. Узнать цвет пиксела можно обратным присвоением::=Image1. Canvas. Pixels [100, 100];

Тип TColor определён как длинное целое (LongInt). Его четыре байта содержат информацию о долях синего (B), зелёного (G), и красного (R) цветов. В 16-ричной системе это выглядит так: $00BBGGRR. Доля каждого цвета может меняться от 0 до 255. Поэтому чтобы отобразить максимально красную точку, ей нужно присвоить цвет $000000FF.
Для стандартных цветов в Delphi определён набор текстовых констант. Увидеть его можно, открыв в Инспекторе Объектов свойство Color, например, той же Формы.


2. Практическая часть

.1 Техническое задание


Полное наименование программы «Создание программы визуализации методов сортировки массива».

Краткое наименование программы - «Сортировка массива».

Сортировка массива демонстрирует различные методы сортировки и позволяет выделить наиболее эффективные из них.

Разработка ведется на основании задания на дипломную работу по специальности «Программное обеспечение вычислительной техники и автоматизированных систем».

Задание утверждено на заседании предметно-цикловой комиссии специальности 230105 14.04.2014 года.

Разработка является аттестационной при подготовке программиста.

Программный продукт предназначен для заполнения и сортировки массива разными способами.

Программный продукт должен обладать следующими функциональными характеристиками:

·         иметь кнопки для заполнения массива;

·        иметь кнопки для сортировки массива;

·        удаление массива;

·  внешний вид программы должен соответствовать интерфейсу Windows - приложения и должен быть удобен в работе и понятен пользователю любого уровня;

·        программа должна запускаться по стандартам запуска Windows - приложения.

Входными данными являются значения элементов целочисленного массива, сгенерированного случайным образом.

В качестве выходных данных выступают гистограммы, представляющие текущее содержание обрабатываемого массива.

Требования к временным характеристикам и размерам занимаемой памяти состоят в том, что время реакции программы на нажатие любой из клавиш не должно превышать 0,25 с, за исключением реакций на чтение и запись входных и выходных файлов.

Программа должна нормально функционировать при бесперебойной работе ПК. При возникновении сбоя в работе аппаратуры восстановление нормальной работы программы должно производиться после:

·  перезагрузки операционной системы;

·        запуска исполняемого файла программы.

Уровень надежности программы должен соответствовать технологии программирования, предусматривающей комплексное тестирование программы.

Время восстановления после отказа должно состоять из:

·  времени перезапуска пользователем операционной системы;

·        времени запуска пользователем исполняемого файла программы.

Условия эксплуатации ограничены лишь стабильностью работы аппаратной и программной составляющих компьютера, на котором установлен программный продукт.

Источник: https://www.bibliofond.ru/detail.aspx?id=787462