unit exch;
interface
uses crt,delit;
type
osn=
record
gr:string;
fio:string;
sub:string;
dt:string;
pare:byte;
les:char;
pr:string;
end;
osnFile=file of osn;
procedure exchange;
implementation
{-------------------------------------------}
procedure del(var osnF:osnFile; i:integer);
var
temp:osnFile;
zap:osn;
k:integer;
begin
assign(temp,'temp.txt');
rewrite(temp);
seek(osnF,0);
k:=0;
repeat
read(osnF,zap);
if k<>i-1 then
write(temp,zap);
inc(k);
until eof(osnF);
rewrite(osnF);
seek(temp,0);
repeat
read(temp,zap);
write(osnF,zap);
until eof(temp);
close(temp);
erase(temp);
end;
{-------------------------------------------}
procedure exchange;
var name:string;
main,temp:osnFile;
tzap:osn;
l,i,k:integer;
par:byte;
lesson:char;
begin
clrscr;
write('Введите имя основного файла'); readln(name);
assign(main,name); reset(main);
writeln('Записи основного файла:');
k:=0;
repeat
inc(k);
read(main,tzap);
writeln(k,'. '+tzap.gr+' '+tzap.fio+' '+tzap.sub+' '+tzap.dt+' ',
tzap.pare,' '+tzap.les+' '+tzap.pr);
until eof(main);
write('Введите номер записи:');
readln(i);
seek(main,i-1);
read(main,tzap);
writeln;
clrscr;
writeln('Выбранная запись: '+tzap.gr+' '+tzap.fio+' '+tzap.sub+' '+tzap.dt+' ',
tzap.pare,' '+tzap.les+' '+tzap.pr);
writeln('Какое поле необходимо редактировать?');
writeln('1-Группа');
writeln('2-Фамилия И.О.');
writeln('3-Предмет');
writeln('4-Дата');
writeln('5-Номер пары');
writeln('6-Тип занятия');
writeln('7-Присутствие');
readln(l);
write('Введите новое значение, выбранного поля:');
case l of
1:begin readln(name); tzap.gr:=name end;
2:begin readln(name); tzap.fio:=name end;
3:begin readln(name); tzap.sub:=name end;
4:begin readln(name); tzap.dt:=name end;
5:begin readln(par); tzap.pare:=par end;
6:begin readln(lesson); tzap.les:=lesson end;
7:begin readln(name); tzap.pr:=name end;
end;
writeln('Записать изменения?(Y/N)');
readln(name);
if (name='y') or(name='Y')
then
begin
del(main,i);
write(main,tzap)
end
else
writeln('Запись не изменена');
writeln('Для продолжения нажмите Еnter');
readkey;
end;
end.
Заранее спасибо!