рефераты
рефераты
Поиск
Расширенный поиск
рефераты
рефераты
рефераты
рефераты
МЕНЮ
рефераты
рефераты Главная
рефераты
рефераты Астрономия и космонавтика
рефераты
рефераты Биология и естествознание
рефераты
рефераты Бухгалтерский учет и аудит
рефераты
рефераты Военное дело и гражданская оборона
рефераты
рефераты Государство и право
рефераты
рефераты Журналистика издательское дело и СМИ
рефераты
рефераты Краеведение и этнография
рефераты
рефераты Производство и технологии
рефераты
рефераты Религия и мифология
рефераты
рефераты Сельское лесное хозяйство и землепользование
рефераты
рефераты Социальная работа
рефераты
рефераты Социология и обществознание
рефераты
рефераты Спорт и туризм
рефераты
рефераты Строительство и архитектура
рефераты
рефераты Таможенная система
рефераты
рефераты Транспорт
рефераты
рефераты Делопроизводство
рефераты
рефераты Деньги и кредит
рефераты
рефераты Инвестиции
рефераты
рефераты Иностранные языки
рефераты
рефераты Информатика
рефераты
рефераты Искусство и культура
рефераты
рефераты Исторические личности
рефераты
рефераты История
рефераты
рефераты Литература
рефераты
рефераты Литература зарубежная
рефераты
рефераты Литература русская
рефераты
рефераты Авиация и космонавтика
рефераты
рефераты Автомобильное хозяйство
рефераты
рефераты Автотранспорт
рефераты
рефераты Английский
рефераты
рефераты Антикризисный менеджмент
рефераты
рефераты Адвокатура
рефераты
рефераты Банковское дело и кредитование
рефераты
рефераты Банковское право
рефераты
рефераты Безопасность жизнедеятельности
рефераты
рефераты Биографии
рефераты
рефераты Маркетинг реклама и торговля
рефераты
рефераты Математика
рефераты
рефераты Медицина
рефераты
рефераты Международные отношения и мировая экономика
рефераты
рефераты Менеджмент и трудовые отношения
рефераты
рефераты Музыка
рефераты
рефераты Кибернетика
рефераты
рефераты Коммуникации и связь
рефераты
рефераты Косметология
рефераты
рефераты Криминалистика
рефераты
рефераты Криминология
рефераты
рефераты Криптология
рефераты
рефераты Кулинария
рефераты
рефераты Культурология
рефераты
рефераты Налоги
рефераты
рефераты Начертательная геометрия
рефераты
рефераты Оккультизм и уфология
рефераты
рефераты Педагогика
рефераты
рефераты Полиграфия
рефераты
рефераты Политология
рефераты
рефераты Право
рефераты
рефераты Предпринимательство
рефераты
рефераты Программирование и комп-ры
рефераты
рефераты Психология
рефераты
рефераты Радиоэлектроника
рефераты
РЕКЛАМА
рефераты
 
рефераты

рефераты
рефераты
Касса аэропорта

Касса аэропорта

[pic]

Волжский университет имени В.Н. Татищева

Кафедра «Информатика и системы управления»

Специальность: 220100 «Вычислительные машины, комплексы системы и сети»

Задание

на курсовой проект по дисциплине

«Основы технологии программирования»

Студенту________________________________________________________

Группа__________________________________________________________

Тема проекта____________________________________________________

Календарный график задания_______________________________________

Содержание задания

При продаже билетов регистрируют пассажиров.

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

Информация о каждом пассажире состоит из следующих полей :

-Фамилия, имя, отчество;

-Номер паспорта;

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

-Номер рейса.

Сведения о пассажирах сохраняются в файле airbase.dat ,состоящем из

отдельных записей ,где одна запись хранит всю информацию об одном

пассажире.

Программа содержит следующие процедуры и функции;

-Продажа билета (регистрирует нового пассажира);

-Найти пассажира;

-Удалить пассажира;

-Выход;

Указанные процедуры и функции выбираются из меню.

В пункте ПРОДАЖА БИЛЕТА - вводится Ф.И.О , номер паспорта , рейс, т.е

регистрируется новый

пассажир , информация о нем вносится в базу данных.

В пункте НАЙТИ - выводится информация о пассажире.

В пункте УДАЛИТЬ ПАССАЖИРА - по введенной Ф.И.О информация о данном

пассажире удаляется из базы данных.

ВЫХОД - выход из программы.

Руководитель курсовой работы

Студент

Составитель:

Старший преподаватель ___________________________Ахмедханлы Д.М.

Заведующий кафедрой ИиСУ __________________________Краснов С.В.

Декан ФииТ _________________________________________Краснов С.В.

Описание предметной области

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

Оператор программы передвигается по пунктам меню и инициирует запуск той

или иной процедуры нажатием клавиш “Enter”, “стрелка вверх”, ”стрелка

вниз”.

Программа начинается с вывода меню на экран, меню состоит

Меню состоит из семи пунктов, расположенных в следующей

последовательности:

. ОФОРМЛЕНИЕ НОГОГО ПАССАЖИРА

. ВЫВЕСТИ СПИСОК ВСЕХ ПАССАЖИРОВ

. УДАЛИТЬ ИНФОРМАЦИЮ О ПАССАЖИРЕ

. НАЙТИ ПАССАЖИРА

. ОЧИСТИТЬ СПИСОК

. ВЫХОД

Употребление процедур пунктов меню.

Процедура “ВЫВЕСТИ СПИСОК ВСЕХ ПАССАЖИРОВ” используется для просмотра

всех пассажиров всех рейсов.

Процедура “УДАЛИТЬ ИНФОРМАЦИЮ О ПАССАЖИРЕ” используется для удаления

пассажира. Сначала вводится фамилия пассажира, которого необходимо

удалить, фамилия вводиться с клавиатуры. Если такая фамилия есть, то

программа спрашивает подтверждение для удаления “Пассажир найден, удалить

его д/н” если будет нажата клавиша “д”, то пассажир будет удален из базы

данных, если же “н”, то удаление будет отменено.

Процедура “НАЙТИ ПАССАЖИРА” используется для удобства поиска пассажира.

Фамилия вводится с клавиатуры. При нахождении фамилии пассажира выводятся

его данные: фамилия, номер паспорта, номер рейса и направление. При не

нахождении фамилии выводится на экран сообщение “Пассажир отсутствует!”.

Процедура “ОЧИСТИТЬ СПИСОК” удаляет все фамилии из списка. При входе в

эту процедуру появляется сообщение “Вы действительно хотите удалить базу

данных о пассажирах (д/н)”, если будет нажата клавиша “д”, то база данных

будет удалена, если же “н”, то удаление будет отменено.

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

Сначала, подключаем модуль crt- позволяющий проще управлять режимами

экрана, расширенными кодами клавиатуры и цветом.

Вводим константы stand – цвет невыделенного пункта меню и sel – цвет

выделенного пункта меню, а так же n – количество пунктов.

Затем идет описание записей файла «train.dat.»:pas, nomertown– переменные

Ф.И.О пассажира и номер – направление поезда, имеющие строковый тип, pasp,

nomertrain – переменные номера паспорта и номера поезда, имеющие целый тип.

Теперь идёт описание записей файла «railst.dat»:time, model,

nrnap – время отхода, тип поезда, номер – направление, price, chpm – цена

билета, число посадочных мест.

Глобальные переменные: массивы menu, menu1 строкового типа с

количеством элементов от 1 до n, хранят названия пунктов меню и подменю;

переменная целого типа punkt обозначает номер выделенного пункта;

символьная переменная ch выведенный символ; x и y целого типа - координаты

первой строки меню; j, j1 - параметры цикла; ff и w файловые переменные

«airport.dat» и «airbase.dat» соответственно, аналогично buf и buv –

переменные компонент файлов;dlprov, nrnap – переменная проверки и номер -

направление; mas, mas1 – массивы для “tairport.dat”, “airbase.dat”;

символьная переменная k определяет условия да/нет в операторах if…then…else

; f–флажок.

Программа содержит 14 процедур.

Две из них «menutoscr» и «menutoscr1» отвечают за вывод меню и подменю

на экран. Процедуры содержат описания одной локальной переменной i

параметра цикла. Начинаются процедуры с очистки экрана – clrscr. Далее идет

цикл for…to… do, выводящий меню на экран.

В циклах, с помощью процедуры gotoxy, курсор каждый раз перемещается на

позицию вниз, где и выводится заголовок соответствующих пунктов меню и

подменю.

Вводим переменную textattr, которая отвечает за цвет фона и символов.

Присваиваем ей значение константы sel, то есть задаем цвет выделенного

пункта и переводим курсор на текущий пункт. Выделяем его и задаем цвет

невыделенного пункта.

Процедура «new_pass» вводит нового пассажира. Начинаем процедуру с описания

локальных переменных. Обнуляем локальный флажок mozno, потом происходит

очистка экрана – clrscr. Открываем для записи данных нового пассажира файл

«airport.dat». Здесь вводиться: Ф.И.О, номер паспорта.

Процедура «maspas» - Предназначена для формирования из пассажиров

массива, для последующего их удаления. Открываем уже существующий файл

train.dat Присваиваем переменной j-1. А в цикле постусловия repeat…until

формируем из пассажиров массив, который нужен для удаления пассажиров.

Процедура «delete_pass» начинается с очистки экрана – clrscr, обнуляем

флажок. Потом вводится фамилия, которую нужно удалить. В цикле repeat…until

оператор условия if…then выполняется (пассажир найден), то происходит

удаление пассажира, если пассажир был успешно удалён, то появляется

сообщение- “Пассажир”----” был удалён!” и флажку присваивается 1. Иначе

присваивается-2. В следующем if…then файл обновляется, и массив без

пассажира записывается в файл. Далее создаётся новый файл с этим же именем.

В цикле с постусловием repeat…until переменной buf присваивается i –тое

значение элемента массива. Файл закрывается.

Когда флажок не равняется 1, то в цикле if…then печатается сообщение

“Пассажир не найден!”. Если же флажок равняется 2, то печатается сообщение

”Удаление отменено!”.Delay - используется для задержки сообщения об

удалении.

Процедура «search_pass» предназначена для поиска пассажира в базе

данных. Начинаем процедуру с описания локальных переменных, потом

происходит очистка экрана – clrscr. Используем оператор reset для открытия

уже существующего файла. В цикле repeat…until читается информация. В

условном операторе if… then читается введённые Ф.И.О, и распечатываются

данные о конкретном пассажире (т.е. Ф.И.О, ном. паспорта, ном. рейса -

пункт назначения). Закрываем файл. После этого флажку присваивается

значение-1. Если флажок равняется -0 , то печатается сообщение “Пассажир не

найден!”

Процедура «new_airbase» производит полную очистку базы данных о

пассажирах. Начинаем процедуру с очистки экрана – clrscr. В операторе

if…then задаём условие очистки базы данных. Выводим сообщение “Вы

действительно хотите очистить базу данных о пассажирах (д/н)?-”.

Соответственно, переменной k присваивается одно из значений «д» или «н».

При k= «д», с помощью процедур rewrite, данные в файлах удаляются. В

противном случае выход из процедуры. После этого выводится ее на экран

сообщение- “База Аэропорта очищена!”.

Процедура «search_base» предназначена для поиска рейса в базе данных.

Начинаем процедуру с очистки экрана – clrscr. Вводится номер рейса и

направление через тире. Используем оператор reset для открытия уже

существующего файла. В цикле repeat…until читается информация. В условном

операторе if… then читается введённый номер рейса и направление, и

распечатываются данные об рейсе (т.е номер рейса - направление, время

отхода, цена билета (в руб.), тип поезда). Закрываем файл. После этого

флажку присваивается значение-1. Если флажок равняется -0 , то печатается

сообщение “Рейс не найден!”

Процедура «new_base» производит полную очистку базы данных о рейсах.

Начинаем процедуру с очистки экрана – clrscr. В операторе if…then задаём

условие очистки базы данных о рейсах. Выводим сообщение “Вы действительно

хотите очистить базу данных расписания (д/н)?-“. Соответственно, переменной

k присваивается одно из значений «д» или «н». При k= «д», с помощью

процедур rewrite, данные в файлах удаляются. В противном случае выход из

процедуры. После этого выводится ее на экран сообщение- “База расписания

Аэропорта очищена!”.

Основная программа так же начинается с очистки экрана – clrscr.

Определяем имена файлов «Airport.dat», «Airbase.dat» и связываем их с

файловыми переменными процедурой assign.

Задаём названия пунктов меню. Переменной номера выделенного пункта

присваиваем значение единицы. Определяем координаты первой строки меню.

Переменной цвета символов и фона присваиваем значение невыделенного пункта.

Обращаемся к процедуре menutoscr. Входим в цикл передвижения по меню

repeat…until ch=chr(27) (до обращения к пункту «Выход»).

В цикле считываем код нажатой клавиши. С помощью условного оператора

входим в оператор выбора кодов клавиш. Если нажата стрелка вниз, то с

помощью процедуры gotoxy, оператора write, констант sel и stand выделяем

необходимый пункт меню. Аналогичные операции проводим при нажатии стрелки

вверх. При нажатии Enter в операторе выбора открывается процедура

необходимого пункта. В конце цикла обращаемся к процедуре Menutoscr.

Аналогичные операции выполняются и для процедуры Menutoscr1.

В конце программы закрываем файлы «Airport.dat» и «Airbase.dat».

Приложения

Листинги программы

Распечатка результатов решения задачи по данным контрольного примера

program kursovik;

uses crt;

type

airport=record

fio,city:string[30];

pasp,nomerreisa:string[6];

end;

airbase=record

time,model,kuda:string[15];

price,klass,numreis:integer;

end;

const

norm=$20;цвет невыделенного пункта

sel=$50; цвет выделенного пункта

n=7;

var

menu,menu1:array[1..n] of string[30]; название пунктов меню

mas:array[1..50] of airport;

mas1:array[1..50] of airbase;

punkt:integer;номер выделенного пункта

ch:char;введенный символ

j,j1:integer;переменная содержащая общее число пассажиров,

число рейсов

x,y,n1:integer;координаты первой строки меню

procedure Menutoscr;вывод меню на экран

var i:integer;

begin

punkt:=1;

clrscr;

for i:=1 to n do

begin

gotoxy(x,y+i);

writeln(menu[i+1]);

end;

textattr-предопределенная переменная,отвечающая за цвет фона

и символов

textattr:=sel;

gotoxy(x,y+punkt-1);

write(menu[punkt]); выделим строку меню

textattr:=norm;

end;

procedure Menutoscr1;вывод меню на экран

var i:integer;

begin

punkt:=1;

clrscr;

for i:=1 to n1 do

begin

gotoxy(x,y+i);

writeln(menu1[i+1]);

end;

textattr-предопределенная переменная,отвечающая за цвет фона

и символов

textattr:=sel;

gotoxy(x,y+punkt-1);

write(menu1[punkt]); выделим строку меню

textattr:=norm;

end;

procedure new_pass;

var

ff:file of airport;

buf:airport;

ch,k:char;

begin

clrscr;

assign(ff,'airport.dat');

reset(ff);

seek(ff,filesize(ff));

writeln(' "Оформление нового пассажира"');

writeln(' Введите фио--------------');

writeln(' Введите номер паспорта---');

writeln(' Введите пункт назначения-');

writeln(' Введите номер рейса------');

writeln(' Подтверждение д/н--------');

with buf do

begin

gotoxy(29,2);readln(fio);

gotoxy(29,3);readln(pasp);

gotoxy(29,4);readln(city);

gotoxy(29,5);readln(nomerreisa);

end;

gotoxy(29,6);readln(k);

if (k='д') or (k='Д') then

begin

clrscr;

write(ff,buf);

gotoxy(30,12);

write('Пассажир записан в базу

данных!');

end

else

begin

clrscr;

gotoxy(30,12);

write('Запись в базу отменена!');

end;

delay(9999);

delay(5000);

until (ch=chr(162)) and (ch=chr(130));

close(ff);

end;

procedure print_pass;

var

ff:file of airport;

buf:airport;

ch,k:char;

et:integer;

begin

clrscr;

assign(ff,'airport.dat');

reset(ff);

writeln(' Список пассажиров:');

et:=1;

repeat

read(ff,buf);

writeln(' -',buf.fio);

if et=23 then readln;

et:=et+1;

until eof(ff);

close(ff);

readln;

end;

procedure maspas;

var

buf:airport;

ff:file of airport;

begin

assign(ff,'airport.dat');

reset(ff);

j:=1;

repeat

read(ff,buf);

mas[j]:=buf;

j:=j+1;

until eof(ff);

j:=j-1;

close(ff);

end;

procedure delete_pass;

var

ff:file of airport;

i,i1,f:integer;

buf:airport;

k:char;

name:string[30];

begin

clrscr;

writeln(' Удалениe информации о пассажире:');

writeln(' Введите Ф.И.О. пассажира, которого хотите удалить из

базы данных');

write(' -');readln(name);

i:=1;

f:=0;

repeat

if mas[i].fio=name then

begin

gotoxy(30,12);write('Пассажир найден, удалить его

(д/н)-');

readln(k);

if (k='д') or (k='Д') then

begin

for i1:=i to j-1 do

mas[i1]:=mas[i1+1];

j:=j-1;

gotoxy(30,12);

write('Пассажир-"',name,'"-был

удалён! ');

f:=1;

end

else

begin

i:=j;

f:=2;

end;

end;

i:=i+1;

until (i=j+1) or (f=1);

if f=1 then

begin

assign(ff,'airport.dat');

rewrite(ff);

i:=1;

repeat

buf:=mas[i];

write(ff,buf);

i:=i+1;

until i=j+1;

close(ff);

end

else

begin

gotoxy(30,12);

if f=0 then writeln('Пассажир не найден! ');

end;

if f=2 then writeln('Удаление отменено! ');

delay(9999);

delay(5000);

end;

procedure search_pass;

var

ff:file of airport;

i,i1,f:integer;

buf:airport;

k:char;

name:string[30];

begin

clrscr;

writeln(' Поиск информации о пассажире:');

writeln(' Введите Ф.И.О. пассажира, которого хотите найти');

write(' -');readln(name);

i:=1;

f:=0;

assign(ff,'airport.dat');

reset(ff);

repeat

read(ff,buf);

if buf.fio=name then

begin

clrscr;

writeln(' Информация о пассажире:');

writeln(' Ф.И.О.-----------');

writeln(' Номер паспорта---');

writeln(' Пункт назначения-');

writeln(' Номер рейса------');

gotoxy(22,2);writeln(buf.fio);

gotoxy(22,3);writeln(buf.pasp);

gotoxy(22,4);writeln(buf.city);

gotoxy(22,5);writeln(buf.nomerreisa);

f:=1;

readln;

end;

until eof(ff);

close(ff);

if f=0 then

begin

writeln('Пассажир не найден!');

delay(9999);

delay(5000);

end;

end;

procedure new_airport;

var

ff:file of airport;

k:char;

begin

clrscr;

gotoxy(36,12);

textbackground(red);

textcolor(blink);

writeln('ВНИМАНИЕ!');

textattr:=norm;

gotoxy(10,13);

write('Вы действительно хотите очистить базу данных о пассажирах

(д/н)?-');

readln(k);

if (k='д') or (k='Д') then

begin

clrscr;

assign(ff,'airport.dat');

rewrite(ff);

gotoxy(30,12);

writeln('База АЭРОПОРТА очищена!');

close(ff);

delay(9999);

delay(5000);

end;

end;

procedure new_reis;

var

ff:file of airbase;

buf:airbase;

ch,k:char;

begin

clrscr;

assign(ff,'airbase.dat');

reset(ff);

seek(ff,filesize(ff));

writeln(' "Расписание вылетов:"');

writeln(' Номер рейса--------------');

writeln(' Направление--------------');

writeln(' Время вылета(моск)-------');

writeln(' Цена билета(руб)---------');

writeln(' Тип самолета-------------');

writeln(' Класс(1 или 2)-----------');

writeln(' Подтверждение д/н--------');

with buf do

begin

gotoxy(29,2);readln(numreis);

gotoxy(29,3);readln(kuda);

gotoxy(29,4);readln(time);

gotoxy(29,5);readln(price);

gotoxy(29,6);readln(model);

gotoxy(29,7);readln(klass);

end;

gotoxy(29,8);readln(k);

if (k='д') or (k='Д') then

begin

clrscr;

write(ff,buf);

gotoxy(30,12);

write('Рейс записан в базу

данных!');

end

else

begin

clrscr;

gotoxy(30,12);

write('Запись в базу отменена!');

end;

delay(9999);

delay(5000);

until (ch=chr(162)) and (ch=chr(130));

close(ff);

end;

procedure print_reis;

var

ff:file of airbase;

buf:airbase;

ch,k:char;

et:integer;

begin

clrscr;

assign(ff,'airbase.dat');

reset(ff);

writeln(' Расписание вылетов(время московское):');

et:=1;

repeat

read(ff,buf);

writeln(' Рейс-',buf.numreis,': Самара-',buf.kuda,'; ',buf.time,';

Стоимость билета:',buf.price,'(рублей)'); if et=23 then readln;

et:=et+1;

until eof(ff);

close(ff);

readln;

end;

procedure masbase;

var

buf:airbase;

ff:file of airbase;

begin

assign(ff,'airbase.dat');

reset(ff);

j1:=1;

repeat

read(ff,buf);

mas1[j1]:=buf;

j1:=j1+1;

until eof(ff);

j1:=j1-1;

close(ff);

end;

procedure delete_base;

var

ff:file of airbase;

i,i1,f:integer;

buf:airbase;

k:char;

nreis:integer;

begin

clrscr;

writeln(' Удаление рейса из расписания:');

writeln(' Введите номер рейса,который хотите удалить из

расписания');

write(' -');readln(nreis);

i:=1;

f:=0;

repeat

if (mas1[i].numreis=nreis) then

begin

gotoxy(30,12);write('Рейс найден, удалить его (д/н)-

');

readln(k);

if (k='д') or (k='Д') then

begin

for i1:=i to j1-1 do

mas1[i1]:=mas1[i1+1];

j1:=j1-1;

gotoxy(30,12);

write('Рейс номер-"',nreis,'"-

был удалён! ');

f:=1;

end

else

begin

i:=j;

f:=2;

end;

end;

i:=i+1;

until (i=j1+1) or (f=1);

if f=1 then

begin

assign(ff,'airbase.dat');

rewrite(ff);

i:=1;

repeat

buf:=mas1[i];

write(ff,buf);

i:=i+1;

until i=j1+1;

close(ff);

end

else

begin

gotoxy(30,12);

if f=0 then writeln('Рейс не найден! ');

end;

if f=2 then writeln('Удаление отменено! ');

delay(9999);

delay(5000);

end;

procedure search_base;

var

ff:file of airbase;

i,i1,f:integer;

buf:airbase;

k:char;

nreis:integer;

begin

clrscr;

writeln(' Поиск рейса в расписании:');

writeln(' Введите номер рейса, который хотите найти');

write(' -');readln(nreis);

i:=1;

f:=0;

assign(ff,'airbase.dat');

reset(ff);

repeat

read(ff,buf);

if buf.numreis=nreis then

begin

clrscr;

writeln(' Номер рейса--------------');

writeln(' Направление--------------');

writeln(' Время вылета(моск)-------');

writeln(' Цена билета(руб)---------');

writeln(' Тип самолета-------------');

writeln(' Класс(1 или 2)-----------');

gotoxy(29,1);writeln(buf.numreis);

gotoxy(29,2);writeln(buf.kuda);

gotoxy(29,3);writeln(buf.time);

gotoxy(29,4);writeln(buf.price);

gotoxy(29,5);writeln(buf.model);

gotoxy(29,6);writeln(buf.klass);

f:=1;

readln;

end;

until eof(ff);

close(ff);

if f=0 then

begin

writeln('Рейс не найден!');

delay(9999);

delay(5000);

end;

end;

procedure new_base;

var

ff:file of airbase;

k:char;

begin

clrscr;

gotoxy(36,12);

textbackground(red);

textcolor(blink);

writeln('ВНИМАНИЕ!');

textattr:=norm;

gotoxy(10,13);

write('Вы действительно хотите очистить базу данных расписания

(д/н)?-');

readln(k);

if (k='д') or (k='Д') then

begin

clrscr;

assign(ff,'airbase.dat');

rewrite(ff);

gotoxy(30,12);

writeln('База расписания АЭРОПОРТА очищена!');

close(ff);

delay(9999);

delay(5000);

end;

end;

основная программа

Begin clrscr;

menu[1]:='ОФОРМЛЕНИЕ НОВОГО ПАССАЖИРА';

menu[2]:='ВЫВЕСТИ СПИСОК ПАССАЖИРОВ';

menu[3]:='УДАЛИТЬ ИНФОРМАЦИЮ О ПАССАЖИРЕ';

menu[4]:='НАЙТИ ПАССАЖИРА';

menu[5]:='ОЧИСТИТЬ СПИСОК';

menu[6]:='ВЫХОД';

menu[7]:='ПРОСМОТР БАЗЫ';

menu1[1]:='ЗАПИСЬ НОВОГО РЕЙСА';

menu1[2]:='ПОКАЗАТЬ РАСПИСАНИЕ';

menu1[3]:='УДАЛИТЬ РЕЙС';

menu1[4]:='ПОИСК РЕЙСА';

menu1[5]:='ОЧИСТИТЬ РАСПИСАНИЕ';

menu1[6]:='ВЕРНУТЬСЯ В ГЛАВНОЕ МЕНЮ';

punkt:=1;x:=30;y:=8;textattr:=norm;n1:=6;

Menutoscr; repeat

ch:=Readkey;

if ch=chr(0) then

begin

ch:=ReadKey;

case ch of

chr(80): стрелка вниз

if punkt1) then begin

gotoxy(x,y+punkt-1);

write(menu[punkt]);

punkt:=punkt-1;

textattr:=sel;

gotoxy(x,y+punkt-1);

write(menu[punkt]);

textattr:=norm;

end;

end; case of

end

else

if ch=chr(13) then нажата клавиша

begin

case punkt of

1:new_pass;

2:print_pass;

3:

begin

maspas;

delete_pass;

end;

4:search_pass;

5:new_airport;

6:ch:=chr(27);

7:begin

Menutoscr1; repeat ch:=Readkey; if ch=chr(0) then

begin ch:=ReadKey; case ch of

chr(80): стрелка вниз if punkt1)

then

begin

gotoxy(x,y+punkt-1);

write(menu1[punkt]);

punkt:=punkt-1;

textattr:=sel;

gotoxy(x,y+punkt-1);

write(menu1[punkt]);

textattr:=norm;

end;

end; case of

end

else

if ch=chr(13) then нажата клавиша

begin

case punkt of

1:new_reis;

2:print_reis;

3:

begin

masbase;

delete_base;

end;

4:search_base;

5:new_base;

6:ch:=chr(162);

end; case of

menutoscr1;

end;

until (ch=chr(27)) or (ch=chr(162))

or(ch=chr(130));27код

end; case of

end;

Menutoscr; end;

until ch=chr(27);27код

End.

Оформление нового пассажира

Продажа билетов

Вывести список всех пассажиров

Удалить информацию о пассажире

Найти пассажира

Очистить список

Выход

Продажа билетов

Расписание отходов поездов:

{ВЫВОДИТ РАСПИСАНИЕ}

“Оформление нового пассажира”

|Ведите Ф. | Пенкин И.В. |Петров П.П |Иванов И.И. |

|И. О | | | |

|Номер |564743 |812763 | 247398 |

|паспорта | | | |

|Рейс |123 |456 |789 |

|Подтверждени|Д |Д |Д |

|е д/н | | | |

| | | | |

Замечание: Пассажиров необходимо вводить по очереди.

Вывести список всех пассажиров

Продажа билетов

Вывести список всех пассажиров

Удалить информацию о пассажире

Найти пассажира

Очистить список

Выход

|Ф. И. О. |

|Пенкин И.В. |

|Петров П.П. |

|Иванов И.И. |

Удалить информацию о пассажире

Продажа билетов

Вывести список всех пассажиров

Удалить информацию о пассажире

Найти пассажира

Очистить список

Выход

Введите Ф.И.О пассажира, которого хотите удалить:

Пенкин И.В.

Список пассажиров после удаления:

|Ф. И. О. |Петров |Иванов |

| |П.П. |И.И |

|Номер |812763 | 247398 |

|паспорта | | |

|Номер рейса |999 |333 |

|Подтверждени|Д |Д |

|е д/н | | |

| | | |

Продажа билетов

Вывести список всех пассажиров

Удалить информацию о пассажире

Найти пассажира

Очистить список

Выход

Введите Ф.И.О. ,которого хотите найти:

Иванов И.И

Информация о пассажире:

|Ф. И. О. |Иванов И.И |

|Номер | 247398 |

|паспорта | |

|Номер рейса |333 |

| | |

Продажа билетов

Вывести список всех пассажиров

Удалить информацию о пассажире

Найти пассажира

Очистить список

Выход

Вы действительно хотите очистить базу данных о пассажирах(д/н)?-Д

База данных о пассажирах очищена!

Область применения:

Эта программа используется в кассе Аэропорта, для упрощённой работы с

пассажирами и рейсами.

Список используемой литературы:

Turbo Pascal 7.0 (Старший курс). Автор: Фигурнов. В.Э.

Шаг за шагом Turbo Pascal 7.0 начальный курс. Автор :QUA (.

Лекции по Паскалю.

     



рефераты
рефераты
© 2011 Все права защищены