Показать сообщение отдельно
  #1  
Старый 18.04.2011, 14:06
phasha phasha вне форума
Прохожий
 
Регистрация: 16.04.2011
Сообщения: 13
Репутация: 10
Вопрос нахождение трех минимальных цен

дан типизированный файл который создается программой
Код:
 program sozdat_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,n:integer; f:kvart; k:agent;
begin
  WriteLn('kol-vo kvartir: ');
  Readln(n);
  Assign(f, 'agenstvo.ddt');
  Rewrite(f);
  for i:=1 to N do begin
    Writeln('opishi kvartiru  ',i);
    write('komnati: ');
    Readln(k.kk);
    write('etag: ');
    Readln(k.et);
    write('ploschad: ');
    Readln(k.pl);
    write('den registr: ');
    Readln(k.dt.den);
    write('mesac registr: ');
    Readln(k.dt.mes);
    write('god registr: ');
    Readln(k.dt.god);
    write('cena: ');
    readln(k.cena);
    write(f,k);
  end;
  Close(f);
end.

после распечатываем содержимое следующей программой
Код:
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,n:integer; f:kvart; k:agent;
begin   i:=0;
 assign(f,'agenstvo.ddt');
 reset(f);
 While Not Eof(F) Do
  begin
   Inc(i);
   Read(F, K);
   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;
 readln;
  Close(f);
end.

вопрос:какое условие нужно поставить чтобы вывело 3 самых дешевых цены?((
Ответить с цитированием