Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабы+Курсовик / Laba4 (Курсовик)

.pas
Скачиваний:
26
Добавлен:
01.05.2014
Размер:
4 Кб
Скачать
program Fouweweweewweddfdsrth;
uses CRT,printer;
const n=10;
type
    zap=record
    name:string;
    adres:string;
    bday:array[1..3]of integer;
    tel:longint;
  end;
var
i,j:integer;
c:char;
book: array[1..n] of zap;
max,min:zap;
mes,col:Integer;
f:text;

begin
  clrscr;
  write('Vvedite kolichestvo zapisey: ');
  readln(col);
  for i:=1 to col do
  begin
    writeln;
    write('Familia: ');
    readln(book[i].name);
    write('Adres: ');
    readln(book[i].adres);
    write('Telefon: ');
    readln(book[i].tel);
    write('Data rozdenia: ');
      for j:=1 to 3 do
        readln(book[i].bday[j]);
        writeln;
  end;


  clrscr;
for i:=1 to col do
begin
  write(book[i].name);
  write(' ');
  write(book[i].adres);
  write(' ');
  write(book[i].tel);
  write(' ');
  for j:=1 to 3 do
    begin
    write(book[i].bday[j]);
    write('.');
    end;
  writeln;
end;

for i:=1 to col do
begin
  write(lst,book[i].name);
  write(lst,' ');
  write(lst,book[i].adres);
  write(lst,' ');
  write(lst,book[i].tel);
  write(lst,' ');
  for j:=1 to 3 do
    begin
    write(lst,book[i].bday[j]);
    write(lst,'.');
    end;
  writeln;
end;


assign(f,'f_in.dat');
rewrite(f);
for i:=1 to col do
  begin
    write(f,book[i].name);
    write(f,'; ');
    write(f,book[i].adres);
    write(f,'; ');
    write(f,book[i].tel);
    write(f,'; ');
    for j:=1 to 3 do
      begin
        write(f,book[i].bday[j]);
        write(f,'; ');
      end;

writeln(f,'');

end;

close(f);

min.name:=book[1].name;
min.adres:=book[1].adres;
min.tel:=book[1].tel;

for j:=1 to 3 do
  min.bday[j]:=book[1].bday[j];

  max.name:=book[1].name;
  max.adres:=book[1].adres;
  max.tel:=book[1].tel;
for j:=1 to 3 do
  max.bday[j]:=book[1].bday[j];

for i:=1 to col do
  begin
    if (book[i].bday[3]<min.bday[3])then
      begin
        min.name:=book[i].name;
        min.adres:=book[i].adres;
        min.tel:=book[i].tel;
          for j:=1 to 3 do
            min.bday[j]:=book[i].bday[j];
      end;

if (book[i].bday[3]>max.bday[3]) then
  begin
    max.name:=book[i].name;
    max.adres:=book[i].adres;
    max.tel:=book[i].tel;
    for j:=1 to 3 do
      max.bday[j]:=book[i].bday[j];
  end;
if (book[i].bday[3]=min.bday[3])then
begin
  if (book[i].bday[2]<min.bday[2])then
    begin
      min.name:=book[i].name;
      min.adres:=book[i].adres;
      min.tel:=book[i].tel;
      for j:=1 to 3 do
        min.bday[j]:=book[i].bday[j];
    end;
  if (book[i].bday[2]=min.bday[2])then
    begin
      if (book[i].bday[1]<min.bday[1])then
        begin
          min.name:=book[i].name;
          min.adres:=book[i].adres;
          min.tel:=book[i].tel;
          for j:=1 to 3 do
            min.bday[j]:=book[i].bday[j];
        end;
    end;
  end;
if (book[i].bday[3]=max.bday[3])then
  begin
    if (book[i].bday[2]>max.bday[2])then
      begin
        max.name:=book[i].name;
        max.adres:=book[i].adres;
        max.tel:=book[i].tel;
        for j:=1 to 3 do
          max.bday[j]:=book[i].bday[j];
      end;
    if (book[i].bday[2]=max.bday[2])then
      begin
        if (book[i].bday[1]>max.bday[1])then
          begin
            max.name:=book[i].name;
            max.adres:=book[i].adres;
            max.tel:=book[i].tel;
            for j:=1 to 3 do
              max.bday[j]:=book[i].bday[j];
          end;
      end;
    end;
  end;

writeln('Samiy molodoy: ',max.name,' -  ',max.adres,'; ',max.tel,'; ',max.bday[1],'.',max.bday[2],'.',max.bday[3]);
writeln('Samiy starshiy: ',min.name,' -  ',min.adres,'; ',min.tel,'; ',min.bday[1],'.',min.bday[2],'.',min.bday[3]);

write('Vvedite mesiac dlya sortirovki: ');
readln(mes);

assign(f,'f_out.dat');
rewrite(f);
for i:=1 to col do
  begin
    if (book[i].bday[2]=mes)then
      begin
        write(f,book[i].name);
        write(f,'; ');
        write(f,book[i].adres);
        write(f,'; ');
        write(f,book[i].tel);
        write(f,'; ');
        for j:=1 to 3 do
          begin
            write(f,book[i].bday[j]);
            write(f,'.');
          end;

        writeln(f,'');
      end;
    end;
close(f);
end.
Соседние файлы в папке Лабы+Курсовик