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

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

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

Специальность: 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 punkt<n 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;

chr(72):    стрелка вверх

if (punkt<=n) and (punkt>1) 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  нажата клавиша <Enter>

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 punkt<n1 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;

chr(72): стрелка вверх

if (punkt<=n1) and (punkt>1) 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  нажата клавиша <Enter>

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код <Esc>

end; case of

end;

Menutoscr; end;

until ch=chr(27);27код <Esc>

End.

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

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

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

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

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

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

Выход

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

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

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

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

Ведите  Ф. И. О

 Пенкин И.В.

Петров П.П

Иванов И.И.

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

564743

812763

  247398

Рейс

123

456

789

Подтверждение д/н

Д

Д

Д

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

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

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

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

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

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

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

Выход

Ф. И. О.

Пенкин И.В.

Петров П.П.

Иванов И.И.

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

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

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

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

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

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

Выход

 

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

     Пенкин И.В.

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

Ф. И. О.

Петров  П.П.

Иванов

И.И

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

812763

  247398

Номер рейса

999

333

Подтверждение д/н

Д

Д

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

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

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

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

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

Выход

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

Иванов И.И

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

Ф. И. О.

Иванов И.И

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

  247398

Номер рейса

333

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

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

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

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

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

Выход

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

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

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

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

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

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

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

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