Дипломная Работа программирование с программой

      Комментарии к записи Дипломная Работа программирование с программой отключены

Дипломная Работа программирование с программой.rar
Закачек 641
Средняя скорость 7172 Kb/s

Дипломная Работа программирование с программой

«Разработка программы с помощью языка программирования Delphi »

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

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

программа алгоритм delphi знание студент тестирование

Данный курсовой проект был разработан в среде Delphi. Среди множества языков Pascal является наиболее универсальным и легко изучаемым языком. При этом его удобно использовать для создания сложных приложений, базами данных, приложения масштаба предприятия. Delphi так же прост в обучении, как и Visual Basic, но при этом средства языка программирования Pascal позволяет использовать все современные возможности объектно-ориентированного программирования.

Delphi – это среда быстрой разработки, в которой в качестве языка программирования используется язык Delphi. Язык Delphi – строго типизированный объектно-ориентированный язык, в основе которого лежит хорошо знакомый программистам Object Pascal.

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

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

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

1. Анализ технического задания и постановка задачи проектирования

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

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

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

Тип STRING (строка ) в «Borland Delphi» широко используется для обработки текстов. Он во многом похож на одномерный массив символов ARRAY [0..N] OF CHAR, однако, в отличие от последнего, количество символов в строке–переменной может меняться от 0 до N, где N – максимальное количество символов в строке.

Под файлом понимается либо именованная область внешней памяти ПК (жесткого диска, гибкой дискеты, электронного «виртуального» диска), либо логическое устройство – потенциальный источник или приемник информации.

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

«Borland Delphi» может использовать объекты, содержащее множество однотипных элементов, которые называются массивами. Массив– это формальное обледенение нескольких однотипных объектов (чисел, символов, строк и т.п.), рассматриваемое как единое целое. Для хранения содержимого типизированного файла и обработки удобно использовать массивы с элементами типа запись. Удобство массивов заключается в том, что можно обращаться к отдельному элементу массива по номеру. Дополнительное удобство привносят динамические массивы, отличительной особенностью которых является возможность динамического изменения размерности массива, то есть динамическое выделение или освобождение памяти под требуемое в данный момент количество элементов массива.

Поскольку данная программа является приложением Windows, то для ее реализации будем использовать стандартный подход при написании программ под Windows с использованием графического интерфейса. Так отдельно создадим форму с визуальными компонентами, для различных визуальных компонент сопоставляем процедуры – обработчики. Далее, как только происходит событие на каком-то из визуальных компонент, (щелчок мыши, нажатие на кнопку или пункт меню), операционная система посылает приложению соответствующее сообщение, и запускается соответствующий обработчик именно для этого события. Тогда решение задачи можно разбить на 3 этапа:

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

2) Разработка обработчиков событий от элементов экранных форм, разработка алгоритмов и программных кодов действий обработки текстового файла согласно заданию.

3) Подготовка тестовых исходных данных и отладка программы.

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

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

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

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

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

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

Программа должна быть реализована с графическим интерфейсом пользователя в среде Borland Delphi и должна выполнять следующие функции:

– запрашивать фамилию, имя и группу учащегося;

– выводить поочередно вопросы из базы;

– принимать ответы учащегося;

– анализировать правильность ответов и рассчитывать итоговый балл пропорционально количеству правильных ответов;

– вести протоколирование ответов и записывать их в файле на жестком диске;

– по окончании тестирования выводить правильную оценку;

– предусмотреть перемешивание вопросов, чтобы при повторных запусках порядок следования вопросов был различным.

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

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

По сформулированной в предыдущем задании постановке должна иметься возможность авторизации тестируемого учащегося – ввода его фамилии и группы. Для этого предусмотрим отдельную форму авторизации FormAvto. Для возможности ввода данных об учащемся поместим на форме поля ввода типа TEdit и соответствующие метки описания к ним. Список объектов экранной формы приведен в таблице 2.1

Таблица 2.1 – Объекты экранной формы FormAvto

Особенности и преимущества языка C#. Алгоритмы поиска маршрутов в графе. Разработка вычислительной системы транспортной логистики на языке C#. Выбор среды разработки, визуализация транспортной сети. Задание условий поиска и пример работы алгоритма.

Подобные документы

Разработка модифицированных алгоритмов поиска оптимального маршрута в графе. Задание дополнительных условий и ограничений. Реализация модели для внутреннего представления транспортной сети. Создание программного комплекса в среде Visual Studio 2010.

Описание алгоритма сортировки с двоичным включением, выбор структур данных. Пример сортировки массива, отсортированного случайным образом. Алгоритм покрытия по методу «Построение одного кратчайшего покрытия». Волновой алгоритм поиска длиннейшего пути.

Методы реализации алгоритмов сортировки и алгоритмов поиска на языках программирования высокого уровня. Программирование алгоритмов сортировки и поиска в рамках создаваемого программного средства на языке Delphi. Создание руководства пользователя.

Характеристика вычислительной системы и инструментов разработки. Программирование на языке Pascal в среде Turbo Pascal и на языке Object Pascal в среде Delphi. Использование процедур, функций, массивов, бинарного поиска. Создание базы данных в виде файла.

Обзор алгоритмов распознания объектов на двумерных изображениях. Выбор языка программирования. Обнаружение устойчивых признаков изображения. Исследование алгоритмов поиска объектов на плоскости. Модификация алгоритма поиска максимума дискретной функции.

Анализ алгоритмов нахождения кратчайших маршрутов в графе без отрицательных циклов: Дейкстры, Беллмана-Форда и Флойда-Уоршалла. Разработка интерфейса программы на языке C++. Доказательство «правильности» работы алгоритма с помощью математической индукции.

Разработка алгоритма реализации на ЭВМ процесса поиска кратчайшего пути в графе методом Дейкстры. Программная реализация алгоритма поиска кратчайшего пути между двумя любыми вершинами графа. Проверка работоспособности программы на тестовых примерах.

Обзор существующих систем атоматизированного поиска. Мир электронных денег. Разработка структуры системы автоматизированного поиска отделений и терминалов банков. Обоснование выбора технологии разработки, программной среды и языка программирования.

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

Алгоритм сортировки Шейкер: математическое описание задачи и описание алгоритма. Алгоритм покрытия: построение одного кратчайшего покрытия. Описание схемы и работы алгоритма на графах: нахождение кратчайшего пути. Контрольные примеры работы алгоритмов.

1 ЯЗЫК И СРЕДА РАЗРАБОТКИ ТЕХНИЧЕСКОГО ПРОЕКТА.. 5

1.2 Выбор СУБД.. 12

1.2.1 Происхождение СУБД Firebird. 12

1.2.2 Объемы данных. 13

1.2.3 Инструменты разработчика. 14

1.2.4« IB Expert ». 16

2 ОПИСАНИЕ ПРОЕКТА.. 17

2.1 Технические характеристики. 17

2.2 Концептуальная модель БД. 19

2.3 Логическое проектирование. 21

2.4. Физическое проектирование. 21

2.5 Физическая реализация. 22

3. Методы и технологии. 26

3.1. Скрипт создания БД.. 26

3.2. Авторизация. 27

3.3. Визуализация данных. 27

3.4 Сортировка, поиск. 28

3.5 Экспорт в Ms Word . 29

3.6 Описание хранимых процедур. 30

3.7 Соединение с БД.. 33

3.8 Резервное копирование и восстановление. 34

4. Спецификация программы. 35

5. Руководство оператора. 38

5.1 Общие сведения. 38

5.2 Установка системы.. 38

5.2 Вызов и загрузка. 39

5.2 Работа с приложением. 39

БИБЛИОГРАФИЧЕСКИЙ СПИСОК ЛИТЕРАТУРЫ.. 48

Приложение А Скрипт создания БД.. 49

Приложение Б – Листинг. 88

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

Существует много веских причин перевода существующей информации на компьютерную основу. Сейчас стоимость хранения информации в файлах ЭВМ дешевле, чем на бумаге. Базы данных позволяют хранить, структурировать информацию и извлекать оптимальным для пользователя образом. Использование клиент/серверных технологий позволяют сберечь значительные средства, а главное и время для получения необходимой информации, а также упрощают доступ и ведение, поскольку они основываются на комплексной обработке данных и централизации их хранения. Кроме того ЭВМ позволяет хранить любые форматы данных текст, чертежи, данные в рукописной форме, фотографии, записи голоса и т.д.

Для использования столь огромных объемов хранимой информации, помимо развития системных устройств, средств передачи данных, памяти необходимы средства обеспечения диалога человек-ЭВМ, которые позволяют пользователю вводить запросы, читать файлы, модифицировать хранимые данные, добавлять новые данные или принимать решения на основании хранимых данных. Для обеспечения этих функций созданы специализированные средства – системы управления базами данных (СУБД). Современные СУБД — многопользовательские системы управления базой данных, которые специализируется на управлении массивом ин­формации одним или множеством одновременно работающих пользователей.

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

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

1 ЯЗЫК И СРЕДА РАЗРАБОТКИ ТЕХНИЧЕСКОГО ПРОЕКТА

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

1. Язык Си. Переносимость программ, написанных на Си, является наиболее разрекламированным преимуществом этого языка. Если вы пишете программу на Си и избегаете при этом использовать расширения библиотеки, зависящие от конкретного компилятора, или машинно-зависимые операции, то вы получаете неплохие шансы (значительно большие, чем при любом другом языке) на успешный перенос вашей программы в другую программно-аппаратную среду, включая смену компилятора, операционной системы и ЭВМ. Библиотека функций для работы с окнами привязана к архитектуре видеопамяти IBM PC, а функции резидентных в памяти утилит используют систему прерываний IBM PC, специфические особенности DOS и библиотеку расширений компилятора Турбо Си, которая облегчает разработку программ обработки прерываний. Некоторые функции включают небольшие фрагменты на языке ассемблера. Расширяемость языков программирования означает существование потенциальной возможности внести добавления в язык. Си рассчитан на расширение по своему замыслу, поскольку содержит очень небольшое число операторов. Следует помнить, что сам язык позволяет немногим более чем изменять значения переменных и управлять последовательностью выполнения программы. Самое важное в программах на Си заключено в функциях, а язык сам по себе не имеет другие внутренние функции, кроме основной функции (функции main). Первая группа расширений языка Си размещается в стандартной библиотеке, другие нестандартные расширения поддерживает конкретный компилятор и, наконец, третья группа расширений содержится в дополнительных библиотеках функций Си. Последняя группа расширений разрабатывается самим программистом, который создает программы для многократного использования. Кроме своей функциональной расширяемости, Си позволяет расширять стандартный набор типов данных путем определения структур, объединений и использования операторов typedef. Программистам особенно нравится краткость выражений, которыми в Си кодируются алгоритмы. Большинство операторов, будь то операторы присваивания, условные операторы, обращения к функциям или выражения, кроме операторов управления последовательностью выполнения программы, возвращают некоторые значения. Использование этой особенности языка позволяет представлять выражения в краткой форме. Си обеспечивает формирование эффективного машинного кода программы, что достигается привязкой языков программирования к структуре памяти и регистровой архитектуре ЭВМ, для которых они создаются. Си часто характеризуется как переносимый язык ассемблера высокого уровня. Сама природа языка позволяет компилятору генерировать эффективный оптимизированный машинный код.

2. Visual Basic обладает очень гибкой системой использования форм, Можно сделать все формы в программе видимыми одновременно или же загружать и выгружать формы по мере необходимости. Visual Basic позволяет :

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

· работать с меню и диалоговыми окнами;

· работать с формами, принтерами и обработчиками ошибок;

· добавлять художественное оформление и спецэффекты;

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

· работать с наборами элементов и массивами;

· работать с текстовыми файлами и базами данных;

· взаимодействовать с Microsoft Office .

Visual Basic предоставляет три очень полезных объекта для предоставления доступа к файловой системе. Это списки дисковых накопителей, которые позволяют пролистывать доступные диски в системе; списки директорий, которые позволяют ориентироваться в папках на выбранном диске, и списки файлов, позволяющие выбрать нужный файл в папке. В Visual Basic можно создать как объектные, так и управляющие приложения, поддерживающие функцию Automation (автоматизация). Приложения для Windows , полностью поддерживающие функцию Automation , позволяют осуществлять доступ к своим функциям в виде набора объектов с соответствующими им свойствами и командами. Приложения для Windows , которые предоставляют свойства объектов, называются объектными или серверными приложениями, а программы эти объекты использующие, называются управляющими или клиентскими приложениями. Автоматизация представляет собой промышленный стандарт, позволяющий осуществить взаимодействие двух приложений. С помощью Visual Basic можно построить собственное приложение по обработке баз данных, которое отображало бы только информацию, необходимую пользователю, а также предоставляло бы пользователю необходимые средства для обработки данных. В Visual Basic можно создать как объектные, так и управляющие приложения, поддерживающие функцию Automation (автоматизация). Приложения для Windows , полностью поддерживающие функцию Automation , позволяют осуществлять доступ к своим функциям в виде набора объектов с соответствующими им свойствами и командами. Приложения для Windows , которые предоставляют свойства объектов, называются объектными или серверными приложениями, а программы эти объекты использующие, называются управляющими или клиентскими приложениями. Автоматизация представляет собой промышленный стандарт, позволяющий осуществить взаимодействие двух приложений.

3. Visual FoxPro 7.0 содержит инструментальные средства и мощный модуль обработки информации, которые необходимы разработчикам для управления большими объемами данных независимо от того, работают ли они с таблицами, выполняют запросы или разрабатывают полнофункциональные приложения баз данных для конечных пользователей. Visual FoxPro 7.0 помогает разработчикам достичь максимальной производительности благодаря применению эффективной среды и удобных наглядных средств разработки. Visual FoxPro 7.0 предоставляет разработчикам гибкие средства построения приложений баз данных любого типа с применением компонентов COM+ и веб-служб. Интегрированная поддержка языка XML позволяет создавать взаимодействующие друг с другом приложения и компоненты благодаря возможностям представления данных Visual FoxPro в формате XML и импорта данных в формате XML в таблицы Visual FoxPro. Основные возможности :

· Поддержка Active Accessibility. Обеспечение приложениям доступа к таким средствам независимых разработчиков, как программы чтения с экрана, устройства распознавания голоса и автоматические средства тестирования.

· Поставщик OLE DB. Обеспечение простого доступа к данным Visual FoxPro для клиентов, не основанных на Visual FoxPro.

· Интегрированная поддержка языка XML. Построение взаимодействующих приложений и компонентов благодаря возможностям представления данных Visual FoxPro в формате XML и импорта данных в формате XML в таблицы Visual FoxPro.

· События базы данных. Контроль действий пользователя с помощью кода, исполняемого при открытии, закрытии или изменении базы данных.

· Веб-службы. Создание веб-служб на основе протокола SOAP и подписка на них.

· Языковая поддержка IntelliSense. Сокращение времени написания кода благодаря эффективной расширенной языковой поддержке при вводе с клавиатуры.

· Просмотр документов. Просмотр процедур, функций и методов в исходном коде, а также быстрый переход к ним.

· Закрепляемые окна IDE. Закрепление окон для таких широко распространенных средств, как Command (Команда), Data Session (Сеанс данных) и Debug (Отладка).

· Средства развертывания. Создание программ установки собственных приложений с применением специально разработанной для Visual FoxPro версии хорошо известной программы InstallShield® Express.

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

· Визуальное и невизуальное наследование. Снижение времени разработки благодаря созданию библиотек классов для повторно используемого кода, форм и управляющих элементов.

· Поддержка служб COM+. Построение компонентов для высокомасштабируемых n-уровневых приложений с распределенными транзакциями с помощью служб COM+ операционной системы Windows 2000.

· Интеграция со службами IIS. Построение быстродействующих веб-приложений, управляемых базой данных, с помощью Visual FoxPro и служб IIS (Internet Information Services – информационные службы Интернета) в Windows NT 4.0 или Microsoft Windows 2000.

· Модуль Microsoft SQL Server 2000 Desktop Engine ( MSDE ). Построение настольных и совместно используемых приложений, совместимых с SQL Server 2000, и осуществление непосредственной миграции кода к SQL Server 2000 без изменения кода.


Статьи по теме