Касса аэропорта
Реферат - Компьютеры, программирование
Другие рефераты по предмету Компьютеры, программирование
/p>
mas1:array[1..50] of airbase;
punkt:integer;номер выделенного пункта
ch:char;введенный символ
j,j1:integer;переменная содержащая общее число пассажиров,
число рейсов
x,y,n1:integer;координаты первой строки меню
procedure Menutoscr;вывод меню на экран
vari: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;вывод меню на экран
vari: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