Федеральное агентство по образованию
Государственное образовательное учреждение
Высшего профессионального образования
Тульский государственный университет
КАФЕДРА
АВТОМАТИЗИРОВАННЫХ
ИНФОРМАЦИОННЫХ И УПРАВЛЯЮЩИХ СИСТЕМ
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовой работе
на тему
"Автоматизированная система обработки структур данных"
Студент гр. | ______________ | ______________ | ______________ |
(индекс группы) | (подпись и дата) | (инициалы и фамилия) |
Руководитель | ______________ | ______________ | ______________ |
(должность и ученая степень) | (подпись и дата) | (инициалы и фамилия) |
ТУЛА 200…
Введение. 3
1. Техническое задание. 4
1.1 Назначение разработки. 4
1.2 Требование к программе. 5
1.3 Стадии и этапы разработки. 6
2. Описание программы.. 7
2.1 Функциональное назначение. 7
2.2 Описание логической структуры.. 7
2.3 Входные и выходные данные. 10
3. Инструкция по эксплуатации программы.. 12
3.1 Назначение программы.. 12
3.2 Выполнение программы.. 13
3.3 Описание контрольного примера. 14
Заключение. 18
Библиографический список. 19
Приложения. 20
Задача разработки программного обеспечения систем различного назначения является основополагающей задачей программирования. Курсовая работа предполагает выполнение всех основных стадий и этапов разработки программ и программной документации в соответствии с существующими государственными и отраслевыми стандартами.
Основная цель работы заключается в закреплении навыков самостоятельного использования теоретического материала и практического опыта для решения задач проектирования и разработки ПО систем различного назначения.
В данной работе рассмотрены и реализованы четыре задачи, объединенные в единую систему. Три задачи содержат обработку массивов данных, а четвертая предполагает работу с файлами и использование записей.
В качестве инструментального средства был выбран язык структурного программирования Паскаль, который является достаточно простым и удобным, а также популярным средством разработки такого вида программного обеспечения.
В курсовой работе приведены тексты программного кода с подробным описанием, а также технология работы созданных программных средств с выводом результатов.
Необходимо решить четыре задачи:
Дана действительная матрица размера mxn, причем 1≤m≤20; 1≤n≤40. Определить числа b1,…, bm, равные соответственно наименьшим значениям элементов строк.
Назовем допустимым преобразованием матрицы перестановку двух строк или двух столбцов. Дана действительная квадратная матрица порядка n. С помощью допустимых преобразований добиться того, чтобы один из элементов матрицы, обладающий наибольшим по модулю значением, располагался в левом верхнем углу матрицы.
В массиве X(m,n) каждый элемент (кроме граничных) заменить суммой непосредственно примыкающих к нему элементов по вертикали, горизонтали и диагоналям.
Ввести и сохранить в файле данные следующей структуры: № квитанции, наименование товара, дата поступления товара, срок, на который сдан товар, стоимость товара. Организовать просмотр исходных данных и вывести список товаров, отсортированный по дате поступления (по возрастанию, метод пузырька) с указанием № квитанции, наименования товара и даты поступления. Ввод и вывод данных организовать в виде таблиц. Отладку программы производить на примере файла, состоящего не менее чем из 15 записей.
На втором этапе необходимо объединить эти задачи в единый программный комплекс, ориентированный на обработку оперативных и внешних структур данных.
Программный комплекс должен иметь модульную структуру, т.е. каждая подзадача должна быть реализована независимо от других и использовать стандартные программные модули языка программирования Паскаль.
Основные функции, которые должно выполнять данное программное средство:
Удобный запуск из единой программной среды
Ввод и обработка двумерных массивов данных: поиск наименьших и наибольших значений матрицы, перестановка строк и столбцов матрицы, вычисление суммы элементов, примыкающих к текущему.
Ввод и сохранение данных в файле.
Сортировка данных различного типа.
Входными данными программного комплекса являются матрицы размера mxn и nxn, файл с данными различных типов.
Выходные данные – матрицы размера m, nxn, nxm, файл с данными различных типов.
Для разработки программного комплекса был выбран язык Паскаль и среда разработки Турбо Паскаль.
Паскаль - это один из наиболее распространённых языков программирования 80-90х годов, поддерживающий самые современные методологии проектирования программ (нисходящее, модульное проектирование, структурное программирование), имеет свою достаточно богатую историю развития.
Новую жизнь языку дала фирма Борланд, разработавшая на его базе семейство Паскаль – систем, называемых Турбо Паскалем. Интегрированная среда, обеспечивающая многооконную разработку программной системы, обширный набор встроенных в неё средств компиляции и отладки, доступный для работы через легко осваиваемое меню, - всё это обеспечивает высокую производительность труда программиста, недостижимую при работе со старыми средами.
Язык Турбо Паскаль хорошо подходит для обучения программированию.
Техническое задание. (1-2 недели)
На стадии технического задания производится постановка задачи, определяются общие требования к программе, выполняется технико-экономическое обоснование разработки программы, определяются входные и выходные данные, выбирается язык программирования, определяются требования к техническим средствам.
Эскизный проект. (1 неделя)
На стадии эскизного проекта уточняются методы решения задачи, определяется структура входных и выходных данных, разрабатывается общее описание алгоритма решения задачи.
Технический проект. (1-2 недели)
В рамках технического проекта производится детальная разработка алгоритма решения задачи, определяются формы представления входных и выходных данных, разрабатывается структура программы, окончательно определяется конфигурация технических средств.
Рабочий проект. (6-7 недель)
На стадии рабочего проектирования производится программирование задачи, отладка программы, составление тестов для испытания программы, разрабатывается документация в соответствии с ЕСПД. Заключительным этапом рабочего проектирования является проведения испытания программы на контрольном примере, осуществление корректировки программы по результатам испытаний.
– Внедрение. (2-3 недели). На стадии внедрения осуществляется передача программы и программной документации в эксплуатацию, оформление акта о внедрении программы.
Наименование программы: Автоматизированная система обработки структур данных.
Назначение программы: Обработка табличных данных, работа с файлами, обработка данных различных типов.
Язык программирования: Язык структурного программирования Паскаль.
Специальное программное обеспечение: Среда программирования Турбо Паскаль фирмы Borland.
Функциональные ограничения на использование программы: Нет. Работает на всех типах персональных компьютеров.
Программный комплекс запускается с помощью файла menu. exe. При запуске мы видим главное меню программы, состоящее из пяти пунктов: Задача1, Задача2, Задача3, Задача4, Выход.
Блок-схема алгоритма программы с учетом текста программы на языке Паскаль в Приложении выглядит следующим образом:
Опишем подпрограммы, которые представлены в блок-схеме алгоритма:
vvod(A_, m_, n_) – ввод матрицы размера m на n и вывод её на экран;
obrab(A_, m_, n_, b_) – поиск наименьших значений строк матрицы;
vyvod(A_,b_, m_,n_) – вывод массива наименьших значений строк матрицы;
vvod1(A1,n_) - – ввод матрицы размера m на m и вывод её на экран;
poiskmax(A1,n_,g_,l_) – поиск максимального по модулю значения массива;
perestanovka(A1,n_,g_,l_) – перестановка строк и столбцов матрицы, содержащих максимальный элемент;
vyvod1(A1,n_) – вывод матрицы m на n с наибольшим значением в левом верхнем углу;
obrab1(A_,C_,m_,n_) – замена элементов матрицы суммой соседних элементов;
vyvod2(C_,m_,n_) – вывод преобразованной матрицы на экран;
vvod2(d_) – чтение из файла данных;
sort(d_) – сортировка данных файла по дате;
vyvod3(d_) – запись отсортированных данных в файл;
Эти функции и процедуры, используемые при выборе числовых значений от 1 до 5 описаны в модулях zad1, zad2, zad3, zad4.
В начале работы с программным комплексом необходимо осуществить выбор необходимого режима работы с помощью числовой переменной, а затем ввести данные в зависимости от выбранной задачи.
Опишем входные данные подробнее:
Переменная k целого типа отвечает за выбор пункта главного меню программного комплекса.
При выборе первого пункта меню необходимо ввести следующую информацию:
Матрицу m на n, элементы которой являются действительными числами
Размерности матрицы определены как константы: m=20, n=40
При выборе второго пункта меню необходимо ввести следующую информацию:
Матрицу m на m, элементы которой являются действительными числами