
18.04.2011, 22:23
|
 |
Активный
|
|
Регистрация: 31.03.2009
Адрес: Украина, г.Днепропетровск
Сообщения: 324
Версия Delphi: Delphi7
Репутация: 3877
|
|
Вот подправил, вроде работает, может и проще можно не знаю
Код:
program otkrit_file_agenstvo;
{$APPTYPE CONSOLE}
uses
SysUtils;
type agent=record
kk:byte;
et:integer;
pl:real;
cena:real;
dt:record
den:integer;
mes:integer;
god:integer;
end;end;
type kvart=file of agent;
var i,u:integer; f:kvart; k:agent; m: Array [1..3] of integer; mc: real;
begin i:=0; u:=0;
assign(f,'C:\agenstvo.ddt');
m[1]:= -1;
m[2]:= -1;
m[3]:= -1;
For u:=1 To 3 Do
begin
mc:= 9999999;
i:= 0;
reset(f);
While Not Eof(F) Do
begin
Inc(i);
Read(F, K);
if k.cena < mc Then
if (m[1]<>i)and(m[2]<>i)and(m[3]<>i) Then
begin
mc:= k.cena;
m[u]:= i;
end;
end;
end;
i:= 0;
reset(f);
While Not Eof(F) Do
begin
Inc(i);
Read(F, K);
if (i=m[1])or(i=m[2])or(i=m[3]) Then
begin
Writeln('kvartira: ', i);
Writeln('komnati: ', K.kk);
Writeln('etag: ', K.et);
Writeln('ploschad: ',K.pl:3:0,' kv. metrov');
Writeln('data reg.: ', K.dt.den,'.',K.dt.mes,'.',K.dt.god,'g.');
writeln('cena: ',k.cena:8:2,' rubley');
writeln('----------------------------');
end;
end;
readln;
Close(f);
end.
__________________
If end Then begin;
|