Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program q220742972;
- {$I-}
- type TBook = record
- zar : integer;
- name : string[15];
- ceh : string[15];
- deleted : boolean;
- end;
- var
- temp : TBook;
- ved : file of TBook;
- yn : string;
- i : integer;
- begin
- assign(ved, 'lib.txt');
- while True do begin
- writeln;
- writeln('a - создать/очистить ведомость');
- writeln('b - добавить работника');
- writeln('c - распечатать ведомость');
- writeln('d - удалить работника');
- writeln('e - посчитать сумму выплат по цеху');
- writeln('x - выход');
- writeln;
- write('ваш выбор: ');
- readln(yn);
- yn := lowercase(yn);
- if yn = 'a' then begin
- rewrite(ved);
- if IOresult <> 0 then
- writeln('!!! ошибка создания файла ведомости.')
- else begin
- close(ved);
- writeln('ведомость создана/очищена.');
- end;
- end;
- if yn = 'b' then begin
- temp.deleted := false;
- writeln('Введите сведения о работнике:');
- write ('Фамилия: '); readln(temp.name);
- write ('Размер зарплаты за месяц: '); readln(temp.zar);
- write ('Цех: '); readln(temp.ceh);
- reset(ved);
- if IOresult <> 0 then begin
- writeln('!!! ошибка открытия файла ведомости. ведомость не создана?');
- continue;
- end;
- seek(ved, filesize(ved));
- write(ved, temp);
- close(ved);
- writeln;
- end;
- if yn = 'c' then begin
- reset(ved);
- if IOresult <> 0 then begin
- writeln('!!! ошибка открытия файла ведомости. ведомость не создана?');
- continue;
- end;
- writeln('Работники завода:');
- writeln('id':4, 'Фамилия':10, 'Размер зарплаты за месяц':25, 'Цех':10);
- i := 0;
- while not(eof(ved))do begin
- read(ved,temp);
- if not(temp.deleted) then
- writeln(i:4, temp.name:10, temp.zar:25, temp.ceh:10);
- inc(i);
- end;
- writeln;
- close(ved);
- end;
- if yn = 'd' then begin
- reset(ved);
- if IOresult <> 0 then begin
- writeln('!!! ошибка открытия файла ведомости. ведомость не создана?');
- continue;
- end;
- write('введите id удаляемого работника:');
- read(i);
- seek(ved, i);
- read(ved, temp);
- temp.deleted := true;
- seek(ved, i);
- write(ved, temp);
- close(ved);
- end;
- if yn = 'x' then break;
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement