Автор работы: Пользователь скрыл имя, 23 Марта 2013 в 10:59, курсовая работа
В данной курсовой работе приведена программа, которая применяется для подсчёта сведений о сроках хранения лекарства. Здесь был использован метод структурного программирования для облегчения написания и отладки программы, а также повышения ее наглядности и читаемости. Целью написания данной работы было получение и закрепление практических навыков разработки алгоритмов различными методами.
ВВЕДЕНИЕ 3
1. УСЛОВИЕ И ПОСТАНОВКА ЗАДАЧИ 4
1.1. Входная информация 4
1.2. Выходная информация 5
1.3. Промежуточная информация 6
2. ФОРМАЛИЗАЦИЯ ЗАДАЧИ 7
3. АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ 8
3.1. Словесный алгоритм 8
3.2. Логическая схема алгоритма 9
3.3. Описание логической схемы 16
4. СОСТАВЛЕНИЕ ПРОГРАММЫ РЕШЕНИЯ ЗАДАЧИ 17
5. КОНТРОЛЬНЫЙ ПРИМЕР 22
ЗАКЛЮЧЕНИЕ 25
Федеральное агентство по образованию Российской Федерации
Уфимский государственный
авиационный технический
Кумертауский филиал
Кафедра ПА
КУРСОВАЯ РАБОТА
по информатике
на тему: «Составление программ для решения
задач
на языке программирования Turbo Pascal»
(Вариант 21)
Выполнил: ст. гр. П-125
Рахматуллин А.И.
Проверил: ст. преподаватель
А. Н. Голов
Оценка: _________________
Подпись: _________________
Дата: _________________
СОДЕРЖАНИЕ
СПИСОК ЛИТЕРАТУРЫ
Введение
В данной курсовой работе приведена программа, которая применяется для подсчёта сведений о сроках хранения лекарства. Здесь был использован метод структурного программирования для облегчения написания и отладки программы, а также повышения ее наглядности и читаемости. Целью написания данной работы было получение и закрепление практических навыков разработки алгоритмов различными методами.
Представленная программа реализована на языке программирования Borland Pascal версии 7.0. Язык Borland Pascal 7.0 - это один из самых мощных языков для ЭВМ типа IBM PC/AT, работающий в среде операционной системы DOS, сочетающий в себе как мощность низкоуровневых языков программирования, так и структурированность с надежностью, присущих языкам высокого уровня.
Для реализации данного алгоритма был выбран язык программирования - Turbo Pascal, для ЭВМ типа IBM РС/АТ/ХТ, работающих в среде операционной системы MS DOS.
Система программирования Turbo Pascal, разработанная американской корпорацией Borland. Turbo Pascal остается одной из самых популярных систем программирования в мире, которой по плечу любые задачи, от создания простых программ, предназначенных для решения несложных вычислительных задач, до разработки сложнейших реляционных систем управления базами данных.
К основным достоинствам языка следует отнести гибкость и надежность, простоту и ясность конструкций, легкость реализации на ЭВМ, возможность полного контроля правильности программ во время компиляции и выполнения, наличие набора структурных типов данных (массивов, файлов и записей), возможность построения новых типов данных.
Заданием на курсовую работу является разработка программы и алгоритма создания файла записей, дополнения в файл записи, поиска информации по критерию в файле записей.
Программа должна решать перечисленные ниже задачи:
1) Структура записи файла:
Вариант 21
Структура записи файла
Для выборки по № группы экранная форма
Учебная нагрузка по группе ___________
№ |
Предмет |
Преподаватель |
Аудиторные часы |
итого. |
Экз. | ||||
лек |
прак |
лаб |
|||||||
... |
*** |
||||||||
Всего |
*** |
*** |
*** |
*** |
2) Внести 5-10 записей.
3) Изменение записей в списке.
4) Дополнение записей в списке.
5) Поиск по номеру номеру группы в списке.
Входная информация — это данные, поступающие на вход задачи и используемые для её решения.
Приведем описание входной информации в таблице №1 так, как это присутствует в тексте программы.
Необходимо отметить, что для удобства, как разработки, так и пользования, был зарезервирован отдельный тип переменной - запись, включающий себя весь выше перечисленный список.
Название переменной |
Тип переменной |
Назначение | ||
recbook |
Запись(record) |
для упрощения решения задачи | ||
Поля записи | ||||
Stprepod |
string[15] |
Хранение имени преподавателя | ||
Stnogruppi |
string[3] |
Хранение номера группы | ||
Stpredmet |
string[12] |
Хранение предмета | ||
Stlekcii |
integer |
Хранение количества проведенных лекий | ||
Stpraktiki |
integer |
Хранение количества проведенных практик | ||
Stlabi |
integer |
Хранение количества проведенных лабораторных | ||
Stzachet |
string[3] |
Хранение информации о зачете | ||
Stekzamen |
string[3] |
Хранение информации о экзамене |
Выходной информацией в
Название переменной |
Тип переменной |
Назначение |
BookFile |
файл типа RecBook |
хранение данных |
В курсовой работе промежуточная информация служит для организации работы программы, а именно: для организации циклов, для считывания данных из файла и с клавиатуры.
Название переменной |
Тип переменной |
Назначение | ||
work |
recbook |
для доступа к полям записи | ||
vid |
byte |
для выбора вызова различных процедур | ||
end_menu |
boolean |
для выхода из меню | ||
name |
string[12] |
хранение имени файла | ||
ind |
integer |
для работы с циклами | ||
count |
integer |
количество записей | ||
lcount |
integer |
количество записей лекционных часов | ||
pcount |
integer |
количество записей практических часов | ||
lbcount |
integer |
количество записей лабораторных часов | ||
icount |
integer |
количество записей всех проведенных часов | ||
i |
integer |
количество лекций, практик, лабораторных одного предмета | ||
numrec |
longint |
локальная переменная принимает значение номера изменяемой записи | ||
rez_find |
boolean |
результат поиска | ||
count |
integer |
количество записей | ||
countrec |
integer |
для работы с поиском |
Формализация задачи – это описание задачи формальными средствами (математическими, логическими). В данной задаче подобные средства не использовались.
Программа задачи основаны на работе в пяти режимах:
Алгоритм – это точный набор инструкций, описывающих последовательность действий исполнителя для достижения результата решения задачи за конечное время
Первым шагом в разработке программы является описание всех переменных, в том числе и типов.
Далее - разработка блока (процедуры) ввода исходных данных. Ввод исходных данных включает в себя создание файла для хранения данных и его заполнения. В этом блоке пользователь вводит наименование лекарственного средства, партию, годен до, количество, номер аптеки, изготовитель.
Также необходимо организовать вывод информации на экран пользователю по запросу: разработать отдельные процедуры для вывода информации, для поиска записи по номеру партии, для изменения и дополнения списка файла данных.
И, наконец, необходимо предусмотреть выход из программы.
Блок-схема основной программы
Блок-схема создания файла под именем «…» (name_file)
Блок-схема процедуры добавления записей в файл(add_newinf)
Блок-схема процедуры создания файла (new_file)
Блок-схема просмотра списка из файла (vivod_vsey_inf)
Блок-схема процедуры изменения списка (obnovit_dannie)
Блок-схема процедуры дополнения в список лекарств(dobavit_dannie)
Блок-схема процедуры поиска(
Основой программы является блок-схема основной программы. В данной части идёт описание полей файла записи, описание переменных величин, процедур. Далее по блок-схеме идёт вывод текстового меню:
1-создание файла;
2-просморт файла;
3-изменение;
4-дополнение;
5-поиск;
0-завершение работы.
В основной программе используется конструкция оператора варианта IF. У пользователя запрашивается, какой из пяти вариантов нужно выбрать:
При вводе «1» вызывается процедура NEW_FILE;
При вводе «2» вызывается процедура VYVOD_VSEY_INF;
При вводе «3» вызывается процедура OBNOVIT_DANNIE;
При вводе «4» вызывается процедура DOBAVIT_DANNIE;
При вводе «5» вызывается процедура POISK_PO_NOMERU_GR
После ввода вспомогательной переменной мы используем процедуру для работы с ней. Если имеет значение одного из блоков выбора, то далее мы переходим к соответственному блоку процедуры.
В случае истинности блока выбора k=1 основной схемы выполняется процедура NEW_FILE. Процедура начинается с заголовка – NEW_FILE. Для того, чтобы создать файл, нужно ввести имя файла. С этой целью используется процедура (name_file). Далее идёт блок открытия файла для записи – используется стандартная функция Turbo Pascal для связывания программного файла на физическом носителе assign:
assign(bookfile, name);
И функция открытия создаваемого файла
rewrite (bookfile);
Остальная часть процедуры заключена в блок операторов с параметром. В данной точке начинается цикл с параметром. Внутри цикла выполняются команды ввода данных в файл.
Если в основной блок-схеме вспомогательная переменная k=2 соответствует истине, то выполняется процедура VYVOD_VSEY_INF. Процедура VYVOD_VSEY_INF является процедурой просмотра списка с данными. Начинается она с открытия созданного файла для изменения, командой.
reset(bookfile);
Далее идёт вывод таблицы с введёнными ранее данными.
Таблица 3.
№ |
Предмет |
Преподаватель |
Аудиторные часы |
итого. |
Экз. | ||||
лек |
прак |
лаб |
|||||||
... |
*** |
||||||||
Всего |
*** |
*** |
*** |
*** |
Чтобы файловые операции выполнялись без ошибок применим функцию ioresult. Эта функция не имеет параметров и возвращает результат целого типа. Она работает при отключении стандартной обработки ошибок. Чтобы установить указатель на начало нужной компоненты, применим операцию seek. Эта операция служит для того, чтобы обеспечить прямой доступ к компонентам файла. Вывод данных будет продолжаться до тех пор, пока указатель не дойдет до конца файла и не выведет все данные. Если указанного имени файла нет на диске, на экране появится надпись: «Файла с именем … на диске нет».
Информация о работе Составление программ для решения задач на языке программирования Turbo Pascal