Реферат: Касса аэропорта
Процедура «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;введенный символ