Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаба 1 Филиппова.doc
Скачиваний:
1
Добавлен:
19.08.2019
Размер:
1.6 Mб
Скачать

Федеральное агентство по образованию

Государственное образовательное учреждение

высшего профессионального образования

«Ижевский государственный технический университет»

Кафедра «Программное обеспечение»

Отчет по лабораторной работе №1

на тему: «Обработка одного типизированного файла»

по дисциплине

«Программирование на языках высокого уровня»

Вариант №10

Выполнил

студент группы 2-78-11 Т.П. Филиппова

Принял И. В. Килин

Ижевск 2010

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

Разработать программу, обрабатывающее главное меню

со следующими режимами:

1. Создание

2. Корректировка

3. Просмотр

0. Выход

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

В режиме "Корректировка" выдается меню второго уровня:

1. Удаление

2. Ввод вновь

3. Изменение

0. Выход

Вводимые вновь записи не должны нарушать отсортированности файла. При невозможности выполнить корректировку выполнить соответствующее сообщение "* не найдено *" или "* уже есть *".

В режиме "Просмотр" выдается меню второго уровня:

1. Полный просмотр

2. Просмотр по выбору

0. Выход

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

2. Описание программы

В программе используется один типизированный файл f для хранения данных; рабочий файл f2, одиной структуры с файлом f . Для считывания данных из файла и занесения данных используются записи z и kontrol.

Структура типа записи tzap:

Punkt – строковая переменная длинной 15 символов для обозначения пункта прибытия поезда;

nom_poezda – переменная типа longint для обозначения номера поезда;

nom_vag – переменная типа longint для обозначения номера вагона;

kol_bil – переменная типа longint для обозначения количества проданных билетов;

Также используются следующие целочисленные переменные:

Kvag – для подсчета количества вагонов по каждому пути;

Kbil – для подсчета количества билетов по каждому пути;

minkb, maxkb, minnv, minnp, maxnv, maxnp – переменные, используемые для обозначения границ выборочного просмотра;

Для удобства работы экран очищается с помощью модуля crt .

Используются переменные логического типа flag, flag2, flag3.

3. Иерархическая схема

Спецификация:

nal_vagonov– главная программа вызывающая процедуру menu.

menu – процедура вызывающая главное меню, вызывает процедуры korrektirovka, sozdanie, prosmotr.

korrektirovka – процедура, вызывающая меню «Корректировки», вызывает процедуры vvod_vnov, udalenie, izmenenie.

sozdanie – процедура создания файла записей.

prosmotr – процедура, вызывающая меню «Просмотра», вызывает процедуры polnyy_prosmotr, vybor_prosmotr.

vvod_vnov – процедура добавления записи в файл.

udalenie – процедура удаления записи из файла по номеру вагона и пункту.

izmenenie – процедура изменения записи в файле (редактирование номера вагона и количества билетов).

polnyy_prosmotr – процедура просмотра всех записей файла.

vybor_prosmotr – процедура выборочного просмотра записей файла (по введенному интервалу значений).