на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Разработка программы обработки экономической информации

Разработка программы обработки экономической информации

3

Министерство образования и науки Украины

Севастопольский государственный технический университет

Кафедра Информационных систем

Пояснительная записка

к курсовому проекту

Разработка программы обработки экономической информации

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

Выполнил:

ст. гр. И-21д

Климашевский С.В.

Проверил:

Руководитель проекта

Крицкий А.В.

Севастополь

2003

Аннотация

В данном документе описывается программа, написанная в соответствии с постановкой задачи на курсовое проектирование по теме "Обработка экономической информации" по дисциплине "Основы программирования и алгоритмические языки". Данная программа предназначена для удобной обработки информации, содержащей сведения о студентах, код группы, фамилия студента, количество пропущенных занятий и число оправданных пропусков, составления и вывода на экран и(или) в файл отчётных таблиц. Входными данными является таблица, записью которой являются код группы, фамилия студента, количество пропущенных занятий, количество оправданных пропусков, количество не оправданных пропусков, сумма не оправданных пропусков и процентное соотношение пропусков. Для проверки работы программы разработан тестовый пример. Результаты тестирования доказывают, что программа правильно выполняет все операции по обработке входных данных и формирования выходных данных.

Содержание

Введение

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

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

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

2.2 Описание основных типов данных

2.3 Входные данные

2.4 Выходные данные

2.5 Внутреннее представление данных

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

3. Технико-экономические показатели

4. Тестовый пример

Заключение

Библиографический список

Приложение

Введение

По окончанию курса “Основы программирования и алгоритмические языки” стоит задача в закреплении навыков программирования на ЭВМ. Она состоит в написании программы на языке высокого уровня PASCAL или Си знакомстве с организацией и принципами действия операционных систем, изучение правил оформление программной документации.

В современном мире обработки информации очень удобно использование диалогового режима работы. Программа была разработана в среде Turbo PASCAL 6.0 .

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

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

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

Требованием к аппаратному и программному обеспечению является наличие любого IBM-совместимого компьютера с наличием накопителя на гибких и (или) жестких магнитных дисках, видеоадаптера класса VGA и наличием достаточного количества оперативной памяти . На компьютере должна быть установлена операционная система MS-DOS v2.1(или выше) или любая другая, совместимая с ней. Применяться может любым пользователем, который хочет проверитьпосещаемость для какой-либо группы лиц.

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

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

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

Даны сведения за месяц о пропуске занятий студентами групп. Структура записи: шифр группы (6 символов), фамилия (15 символов), пропущено часов, оправдано часов. Подсчитать количество неоправданных часов по каждому студенту, суммарные показатели по каждому виду, а также процент неоправданных пропусков в целом.

Работу программы организовать в форме меню:

1). Загрузка информации из исходного файла

2). Обработка данных таблицы

3). Удаление данных о каком-либо студенте.

4). Добавление данных о каком-либо новом студенте.

5). Поиск элемента в таблице

6). Просмотр данных

7). Запись данных в новый файл

8). Выход.

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

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

Просмотр осуществляется дважды: 1-ый раз - при загрузке данных из исходного файла , 2-ой раз - при просмотре обработанных данных (именно они будут записаны в выходной файл).

2.2 Описание основных типов данных

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

type

zap=record

fio:string[15];

nomergrupp:string[4];

propusk:integer;

opravdan:integer;

neopravdan:integer;

summa:integer;

procent:real;

end;

Информация,содержащаяся в полях:

fio: массив для хранения фамилии студента;

nomergrupp: шифр группы;

propusk:число пропусков занятий студентом;

opravdan:число пропусков занатий по уважительной причине;

neopravdan: число пропусков занатий без уважительной причины;

summa:общая сумма пропусков по всем студентам;

procent:процент пропусков без уважительной причины;

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

. При использовании двунаправленного списка, возможно организовать просмотр записей всего списка: от начала в конец (прямое направление) и из конца в начало (обратное), что используется в процедуре просмотра при перемещении от одной записи к другой.

2.3 Входные данные

Входные данные передаются в программу следующим способом:

Чтение входных данных из предварительно подготовленного файла, определенного формата.

Предполагается, что входные данные содержатся в текстовом файле правильного формата, имя которого dano.txt, а местонахождение - текущий каталог.

Пример входных данных текстовый файл приведен на рисунке 2.1

Рисунок 2.3.1 - Пример файл входных данных

2.4 Выходные данные

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

В результате обработки данных составляется ведомость, которая при выборе меню watch and write output file отображается на экране и записывается в новый файл с выполненными по заданию расчетами в виде таблицы:

Рисунок 2.4.1 - Пример файла выходных данных

2.5 Внутреннее представление данных

Программа написана на языке высокого уровня Turbo Pascal и скомпилирована компилятором Borland Pascal 7.0 .

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

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

Структура алгоритма задачи для процедуры org;- считывание из файла и создание двунаправленного списка с упорядоченной структурой по полю fio (фамилия студента) по алфавиту. (рис. 2.6.1.) .

Блок1-обнуляет число элементов.

Блок2-чтение имени файла.

Блок3-проверка введено ли имя.

Блок4-Вывод окна сообщений о том , что имя не введено.

Блок5- присвоение булевой переменной определяющей есть ли данный файл значения false.

Блок6-выход из процедуры.

Блок7-открытие файла.

Блок8-проверка на наличие файла.

Блок9-вывод на экран сообщения о том . что файла такого нет.

Блок10-булевой переменной определяющей есть ли данный файл значения true.Обнуление числа строк

Блок11- присвоение булевой переменной определяющей есть ли данный файл значения false.

Блок12-цикл пока не конец файла

Блок13-цикл пока не почитал 4 строки

Блок15-подсчёт строк

Блок16-чтение строки

Блок17-считывание частей строк в промежуточные переменные.

Блок18-проверка двузначное ли число пропусков

Блок19-(да)копируем из строки 1 эл-т

Блок20-(нет)-2 эл-та

Блок21-перевод строки в целое число

Блок22-проверка двузначное ли число пргопусков по ув. причине

Блок23-(да)копируем из строки 1 эл-т

Блок24-(нет)-2 эл-та

Блок25-перевод строки в целое число

Блок26-выделние памяти и присвоение всех указателей для первого элемента.

Блок27-цикл пока не конец файла

Блок28-чтение строки

Блок29-считывание частей строк в промежуточные переменные.

Блок30-проверка двузначное ли число пропусков

Блок31-(да)копируем из строки 1 эл-т

Блок32-(нет)-2 эл-та

Блок33-перевод строки в целое число

Блок34-проверка двузначное ли число пргопусков по ув. причине

Блок35-(да)копируем из строки 1 эл-т

Блок36-(нет)-2 эл-та

Блок37-перевод строки в целое число

Блок38-присвоение указателю значение первого

Блок39-цикл пока не конец списка

Блок40-сравнение считанной переменной с фамилиями списка

Блок41-(больше)-перевод указателя на следующий эл-т

Блок42-выход из цикла

Блок43-выделение памяти новому эл-ту

Блок44-прверка, если указатель на последний эл-т

Блок45-(да)добавление эл-та в конец

Блок46-(нет)проверка указатель на первый или нет

Блок47-(да)добавление эл-та в начало

Блок48-добавление в любле другое место

Блок49-указателю конца приваем значение nil

Блок50-закрытие файла

Блок51-конец.

Рисунок 2.6.1-процедура чтения информации из файла и организация списка.

Рисунок 2.6.1 - продолжение

Рисунок 2.6.1- продолжение

Рисунок 2.6.1 -продолжение.

Рисунок 2.6.1 - продолжение.

Структура алгоритма задачи для процедуры zapis_v_fail; - сохранение результата в файл (рис. 2.6.2)

Блок1-чтение имени файла

Блок2-установка связи с файлом

Блок3-открытие его в режиме записи

Страницы: 1, 2, 3, 4, 5



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.