Получение сведений о наличии билетов аэрофлот

Автор: Пользователь скрыл имя, 17 Ноября 2010 в 19:19, курсовая работа

Описание работы

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

Содержание

1. Описание постановки задачи 4
1.1. Характеристика задачи 4
1.2. Исходные данные 4
1.3. Результаты решения 4
2. Описание проектных решений 5
2.1. Функциональная структура задачи, программы 5
2.2. Описание алгоритма задачи 7
3. Описание программы 14
3.1. Структура программы 14
3.2. Текст программы 14
3.3. Исполнение программы 14
4. Описание результатов испытаний программы 16
ПРИЛОЖЕНИЯ 17

Работа содержит 1 файл

Курсовая.doc

— 154.00 Кб (Скачать)

    Калининградский Государственный Технический Университет

    Кафедра систем управления и вычислительной техники 
 

                  Работа  защищена с оценкой

                  _______________  ________

                        (дата) 

                  Гудков  А.Л.

  
 
 
 
 
 

    Получение сведений о наличии билетов 

    на  рейсы Аэрофлота 
 

    Пояснительная записка по курсовой работе по дисциплине  «Программирование» 
 
 
 
 
 
 

    Работа  допущена Работу выполнил студент

    к защите учебной группы 08–ИЭ 

    Гудков  А.Л. Четвергов Е.С. 
 

    __________ ____________

    (дата)  (дата) 
 
 
 
 
 
 

Калининград, 2009 
Аннотация 

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

 

СОДЕРЖАНИЕ 
 
 
 

 

    1. Описание постановки  задачи

    1. Характеристика  задачи

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

    1. Исходные  данные

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

    Структура элемента файла «Сведения об авиарейсах» (дисковое имя – ‘C:\TP\aeroflot.dat’):

    • номер рейса (целое число),
    • пункт назначения (строка),
    • время вылета (строка),
    • время прибытия (строка),
    • количество свободных мест (целое число).     

    Запрос  пользователя представляет собой:

    • пункт назначения (строка),
    • время вылета (строка).
    1. Результаты  решения

    Результатом решения задачи на ПК является таблица «Сведения о рейсах Аэрофлота» (рис. 1.1),  которая содержит:

    • номер рейса (целое число),
    • время вылета (строка),
    • время прибытия (строка),
    • количество свободных мест (целое число).
 
Номер рейса Время вылета Время прибытия Количесвто  свободных мест

    Рис 1.1. Таблица «Сведения о рейсах Аэрофлота» 

    Данные  в таблице располагаются в порядке возрастания по времени вылета.

 

    2. Описание проектных  решений

    2.1. Функциональная структура задачи, программы

 

    На  рис. 2.1 представлена схема иерархии процедур задачи «Получение сведений о наличии билетов на рейсы Аэрофлота», полученная в результате её декомпозиции.  

    

    Рис 2.1. Схема иерархии процедур 

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

      

    Рис 2.2. Функциональная структура программы

    Помимо  основной программы с именем «P_AEROFLOT», программа должна содержать следующие подпрограммы:

  1. Подпрограмму Procedure InA (var city,time:string; var e:boolean), которая обеспечивает ввод двух элементов запроса – пункт назначения (строка), время вылета (строка);
  2. Подпрограмму Function UpcaseR (city:string):string, которая обеспечивает преобразование элемента запроса – пункт назначения – в заглавные буквы;
  3. Подпрограмму Function VerA2 (time:string):boolean, которая обеспечивает проверку элемента запроса - время вылета (строка);
  4. Подпрограмму Procedure GetR (city,time:string; var result:mas; var m:integer), которая обеспечивает обработку файла «AEROFLOT» с целью получения сведений об авиарейсах для заданного запроса;
  5. Подпрограмму SortR (var result:mas; m:integer), которая обеспечивает упорядочивание списка по возрастанию времени вылета (целое число);
  6. Подпрограмму OutR (city,time:string; result:mas; m:integer), которая обеспечивает вывод списка авиарейсов на экран монитора.

 

     2.2. Описание алгоритма задачи

 

    На  рис. 2.3 – 2.9  представлены схемы обобщенного  алгоритма задачи «Получение сведений о наличии билетов на рейсы Аэрофлота» и алгоритмов отдельных её процедур. Смысл используемых в них условных обозначений (имен, идентификаторов) приведен в табл. 2.1, тексты выводимых сообщений – в табл. 2.2. Обобщенный алгоритм (алгоритм задачи в целом) описывается в основной программе. Алгоритмы отдельных процедур – в соответствующих подпрограммах (см. 2.1.).

       

    Рис 2.3. Схема алгоритма основной задачи

    

 
 

    Рис 2.4. Схема алгоритма процедуры InA

 

    

 
 

    Рис 2.5. Схема алгоритма функции UpcaseR 
 
 
 
 
 
 
 
 

    

 
 

    Рис 2.6. Схема алгоритма функции VerA2

 

    

 
 

    Рис 2.7. Схема алгоритма процедуры GetR

  
 

 

 

 

 

 
 

 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Таблица 2.1. Условные обозначения (имена, идентификаторы), используемые в процедурах и функциях программы. 

Название 

процедуры

или функции

Имена, идентификаторы Назначение
InA city:string

time:string

e:boolean

Пункт назначения

Время вылета

Признак правильности запроса

e=true – запрос верный

e=false – запрос неверный

UpcaseR i:byte Счетчик символов исходной строки
VerA2 c:boolean Признак правильности запроса

с=true – запрос верный

с=false – запрос неверный

GetR city:string

time:string

result:mas

m:integer

a:zap

a.pn

a.vv

a.mesta

Элемент запроса - пункт назначения

Элемент запроса - время вылета

Массив записей  об авиарейсах

Количество записей  в массиве result

Запись из файла

Элемент записи – пункт назначения

Элемент записи – время вылета

Элемент записи – кол-во свободных мест

Таблица 2.2. Тексты выводимых сообщений
Сообщение 1 Ошибка при  вводе запроса
Сообщение 2 Нет сведений по запросу
Сообщение 3 Введите пункт  назначения:
Сообщение 4 Введите время  вылета (чч.мм):
Сообщение 5 Вы не ввели  пункт назначения!

 

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

    3.1. Структура программы

 

    При написании программы решения  задачи «Получение сведений о наличии билетов на рейсы Аэрофлота» использовался язык программирования Турбо-Паскаль (Turbo Pascal Version 7).

    Функциональная  структура программы (состав и взаимосвязь программных единиц исходного текста её – основной программы и подпрограмм) определена в 2.1.

    Программа является описанием алгоритма задачи, приведенного в 2.2.

    Модульная структура программы (состав и взаимосвязь  модулей исходного текста) приведена на рис. 3.1. Ниже указано содержание модулей программы. 

      

    Рис 3.1 Модульная структура программы 

    Головной  модуль P_AEROFLOT содержит текст основной программы.

    Модуль  U1 содержит подпрограммы InA, UpcaseR, VerA2.

    Модуль  U2 содержит подпрограммы GetR, SortR.

    Модуль  U3 содержит подпрограммы OutR.

    Модуль  U4 содержит описания общих типов данных.

    3.2. Текст программы

 

    Исходный  текст программы решения задачи «Получение сведений о наличии билетов на рейсы Аэрофлота» (на языке Турбо-Паскаль, версия Turbo Pascal Version 7) – её модулей – приведен в приложении 1.

    3.3. Исполнение программы

 

    Для исполнения программы решения задачи «Получение сведений о наличии билетов на рейсы Аэрофлота» необходим ПК типа IBM с клавиатурой и монитором. Программа предварительно откомпилирована и собрана в исполняемый модуль с именем af.exe, который вызывается для исполнения стандартными средствами.

Информация о работе Получение сведений о наличии билетов аэрофлот