Код: Выделить всё
type inf=record
imya:string[15];
familiya:string[15];
dolzhnost:string[20];
zarplata:real;
end;
var
F: file of inf;
Data: inf;
.....
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
Код: Выделить всё
type inf=record
imya:string[15];
familiya:string[15];
dolzhnost:string[20];
zarplata:real;
end;
var
F: file of inf;
Data: inf;
.....
Код: Выделить всё
type inf=record
imya:string[15];
familiya:string[15];
dolzhnost:string[20];
zarplata:real;
end;
var
F,F2: file of inf;
Data: inf;
begin
Assign(F, 'ФайлДанн.dat');
Reset(F);
Assign(F2, 'Temp$$$.dat'); {временный файл, куда будем писать новое}
Rewrite(F2);
while Not Eof(F) do begin
Read(F,Data);
Data.zarplata := Data.zarplata * 1.05;
Write(F2,Data)
end;
close(F);
Close(F2);
Erase(F);
Rename(F2,'ФайлДанн.dat');
end.
Это почему же?Serge_Bliznykov писал(а):Ваша ошибка в том, что не рекомендуется и читать и писать в один и тот же файл.
Код: Выделить всё
type inf=record
imya:string[15];
familiya:string[15];
dolzhnost:string[20];
zarplata:real;
end;
var
F : file of inf;
Data: inf;
i : integer;
begin
Assign(F, 'ФайлДанн.dat');
Reset(F);
i := 0;
while Not Eof(F) do begin
Read(F,Data);
Data.zarplata := Data.zarplata * 1.05;
seek(F,i);
inc(i);
Write(F,Data)
end;
WriteLn('Обработали ',i:1,' записей.');
close(F);
end.