Разработка системного меню.
Системное меню или основное меню должно обеспечивать удобное взаимодействие пользователя с программой. В меню должны войти пункты сохранения, просмотра, ввода новых данных и.т.д. Пользователю нужно всего лишь нажать кнопку ‘enter’. В меню данной программы присутствует шесть пунктов: 1 -Создание файла 2 -Добавления запеси 3 -Корректировка запеси 4 -Просмотр запеси из файла 5 -Удаление запеси 6 -Выход 1 - Создание нового файла – Создается новый файл с именем задаваемым пoльзователем программы 2 - Просмотр содержимого файла – на экран поочередно выдаются раннее созданные записи в виде: Фамилия хозяина: Имя хозяина: марка машины: модель маштны: тип кузова: номер машины: регион: год выпуска: цвет: 3 – Добавление записи – Создание новой записи и файле добавляя его в конец записи. 4 – Поиск по номеру палаты – Позволяет находить данные о отдыхающем по номеру палаты, в котором зарегистрирован отдыхающий. 5 - Выход из программы - выход из программы
Описание программы. Инструкция по использованию программы. Для запуска этой программы необходимо перейти на диск 3.5“A” прилагаемый к данной работе и войти в директорию «KYRSOVAI». Создания базы данных. Для того чтобы создать базу данных пользователю необходимо нажать пункт «СОЗДАНИЕ ФАЙЛА» в главном меню с помощью «ENTER».После этого появится следующая строка: «ЗАДАЙТЕ ИМЯ ФАЙЛА КОТОРЫЙ БУДЕТ СОЗДОВАТЬСЯ». Далее через «ENTER» вводятся данные. Дополнение данных. Для дополнения данных необходимо нажать кнопку «ENTER». После этого появиться следующая строка: «ЗАДАЙТЕ ИМЯ ФАЙЛА В КОТОРЫЙ БУДЕТ ДОБОВЛЯТЬСЯ ЗАПИСЬ»
Выыход.
Возврощает в главную програму.
Описание процедур. Creatfile -создание файла; Addrecord -добавление запеси; Inputfile -ввод данных; Redzap -корректировка; Openfile- просмотр; Clearfile- удаление.
Вывод. Проделанная работа позволяет любому пользователю с легкостью создавать большие объемы информации, обрабатывать их, сортировать, делать выборки по определенным критериям. Использование такой программы в современном мире значительно облегчает деятельность человека.
Program kursovay; uses Crt,Dos; type prokat=record Sname_Hozaina,Name_Hozaina:string[15]; markauto:string[20]; model_auto:string[20]; tip_kyzova:string[20]; nomer_auto:string[20]; region:integer; god_vipyska:integer; color:string[20]; end; var f:file of prokat; zn,filename:string; k:integer; label 11;
{-----------------------------------------------------------}
procedure Creatfile; begin writeln('Задайте имя файла,который будет создаваться'); readln(filename); assign(f,filename); rewrite(f); end;
{-----------------------------------------------------------}
procedure Addrecord; var rez:integer; ch:char; begin while rez<>0 do begin writeln('Задайте имя файла,в который будет добавляться запись'); readln(filename); assign(f,filename); reset(f); rez:=IOResult; if rez<>0 then begin writeln('Проверьте правильность имени файла!'); writeln('Будет ли повторное задание имени файла?(Y/N)'); readln(ch); if (ch='n') or (ch='N') then halt (0); end; end; seek(f,filesize(f)); end;
{==========================================================}
procedure Inputfile; var st:prokat; k:char; begin repeat writeln('Введите данные о новом клиенте: '); write('Фамилия Хозяина: '); readln(st.Sname_Hozaina); write('Имя Хозяина:'); readln(st.Name_Hozaina); write('марка машины:'); readln(st.markauto); write('модель машины:'); readln(st.model_auto); write('тип кузова:'); readln(st.tip_kyzova);
write('номер машины: '); readln(st.Nomer_auto); write('регион:'); readln(st.region); write('год выпуска: '); readln(st.God_vipyska); write('цвет: '); readln(st.color); write(f,st); write('Надо ли вводить данные о новом клиенте? (Y/N)>');readln(k); writeln; until(k='n') or (k='N'); close(f); end;
{=========================================================}
procedure redzap; var st:prokat; filename,str:string; Sname_Hozaina2,Name_Hozaina2:string[15]; markauto2:string[20]; model_auto2:string[20]; tip_kyzova2:string[20]; nomer_auto2:string[20]; region2:integer; god_vipyska2:integer; color2:string[20]; x:integer; begin writeln('Задайте имя файла'); readln(filename); assign(f,filename); reset(f); with st do begin write('Введите фамилию клиента: ');readln(str); x:=0; while not eof(f) do begin read(f,st); if st.Sname_Hozaina=str then begin writeln('Введите новые данные о клиенте: '); write('Фамилия хозяина: '); readln(st.Sname_Hozaina); write('Имя хозяина: '); readln(st.Name_Hozaina); write('марка машины:'); readln(st.markauto); write('модель машины:'); readln(st.model_auto); write('тип кузова:'); readln(st.tip_kyzova); write('номер машины:'); readln(st.nomer_auto); write('регион:'); readln(st.region); write('год выпуска:'); readln(st.god_vipyska); write('цвет: '); readln(st.color); Sname_Hozaina2:=Sname_Hozaina; markauto2:=markauto; Name_Hozaina2:=Name_Hozaina; color2:=color; Nomer_auto2:=Nomer_auto; model_auto2:=model_auto; God_vipyska2:=God_vipyska; tip_kyzova2:=tip_kyzova; region2:=region; seek(f,filepos(f)-1); write(f,st); x:=1; end; end; close(f); end; if x=0 then begin writeln('Записи с такой фамилией нет!');readln end; end;
{==============================================================}
procedure Openfile; var rez:integer;ch:char; begin while rez<>0 do begin writeln('Задайте имя файла'); readln(filename); assign(f,filename); reset(f); rez:=IOResult; if rez<>0 then begin writeln('Проверьте правильность имени файла!'); writeln('Будет ли повторное задание имени файла? (Y/N)'); readln(ch); if (ch='n') or (ch='N') then halt (0); end; end; end;
{============================================================}
procedure Outputfile; var st:prokat;k:char; begin writeln('Хотите посмотреть данные о клиентах? (Y/N)'); readln(k); if (k='y') or (k='Y') then while not eof(f) do
begin read(f,st); clrscr; writeln('Фамилия хозяина:',st.Sname_Hozaina); writeln('Имя хозяина:',st.Name_Hozaina); writeln('марка машины:',st.markauto); writeln('модель машины:',st.model_auto); writeln('тип кузова:',st.tip_kyzova); writeln('номер машины:',st.nomer_auto); writeln('регион;',st.region); writeln('год выпуска:',st.god_vipyska); writeln('цвет:',st.color); writeln('Для продолжения нажмите (enter)'); readln; end; close(f); end;
{========================================================}
procedure Clearfile; var st:prokat; studtoout:string[20]; fo:file of prokat; begin writeln('Задайте имя файла,из которого удаляются элементы'); readln(filename); assign(f,filename);reset(f); assign(fo,'newfile.dat');rewrite(fo); writeln('Задайте фамилию клиента, запись о котором удаляется'); readln(studtoout); while not eof(f) do begin read(f,st); if st.sname_Hozaina<>studtoout then write(fo,st); end; close(f);close(fo); erase(f); rename(fo,filename); end;
{ОСНОВНАЯ ЧАСТЬ ПРОГРАММЫ}
Begin 11:clrscr; writeln(' МЕНЮ:'); writeln('1:Создание файла'); writeln('2:Добавление записи в файл'); writeln('3:Корректировка записи'); writeln('4:Просмотр файла'); writeln('5:Удаление записи из файла'); writeln('6:Выход из программы'); readln(k); case k of 1: begin Creatfile; Inputfile end; 2: begin Addrecord; Inputfile end; 3: redzap; 4: begin Openfile; Outputfile end; 5: Clearfile; 6: Halt; else writeln('Ошибка.Повторите номер режима.') end; goto 11; End.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|