const n=5 ; {OPISANIE}
Type Tname=record
afftar:string[30];
Name:string[30];
end;

TBook=record
name:Tname;
y: integer;
end;

TLib=Array[1..n] of TBook;

Procedure InLib (var Lib:TLib);
{VVOD}
var
i,j:byte; y:integer;
begin
for i:=1 to n do
begin
with Lib[i].Name do
begin
write('vvedite familiu '); readln(afftar);
write('vvedite nazvanie '); readln(name);
begin
write('vvedite god izdaniya '); readln(lib[i].y);
writeln;
end;
end ;
end;
end;

procedure searchY (const Lib:TLib);
{POISK GODA IZD PO AVTORU}
var
i,j,n:integer; s:string;
flag:boolean;
begin
flag:=false;
writeln('vvedite familiu');
readln(s);
for i:=1 to n do
if Lib[i].name.afftar=s then
begin
flag:=true; break;
end;
if flag then writeln(' ',Lib[i].name.afftar ,' ', Lib[i].y)
else writeln('net tekih');
readln;
end;

procedure OutLib (const Lib:TLib);
{VIVOD}
var i, j:byte;
begin
writeln ('BIBLIOTEKA');
for i:=1 to n do
begin
with Lib[i].name do
begin
write (afftar, ' "', name, '" ');
writeln;
begin
write('god izdaniya ');
writeln(Lib[i].y);
writeln;
end;
end;
end;
end;


procedure SortAfftar(var Lib:TLib);
{SORTIROVKA PO AVTORU}
var i,j:byte; z:TBook;
begin
for i:=2 to n do
for j:=n downto i do
begin
if Lib[j].name.afftar then
begin
z:=Lib[j-1];
Lib[j-1]:=Lib[j];
Lib[j]:=z;
end;
end;
end;



var Lib:TLib;
begin
InLib(Lib); readln;
OutLib(Lib); readln;
sortafftar(Lib); readln;
OutLib(Lib); readln;
searchY(Lib); readln;
{ TODO -oUser -cConsole Main : Insert code here }
end.





Чтобы не видеть здесь видео-рекламу достаточно стать зарегистрированным пользователем.
Чтобы не видеть никакую рекламу на сайте, нужно стать VIP-пользователем.
Это можно сделать совершенно бесплатно. Читайте подробности тут.