unit Unit2;
interface
uses stdctrls, SysUtils;
type
TInf=integer;
PSel=^Sel;
Sel=Record
inf:TInf;
A:PSel;
end;

TList=Class(TObject)
sp1,spk,sp:PSel;
nm_zap:integer;
Constructor Create;
Procedure Addk(inf:Tinf);
Procedure Add1(inf:Tinf);
Procedure Readsp1(var Inf:Tinf);
Procedure Readspk(var Inf:Tinf);
Procedure Print(ListB1:TListBox);
Function Ariphm:integer;
Function Quadr:integer;
end;

implementation

Constructor TList.Create;
begin
inherited create;
sp1:=nil;
spk:=nil;
end;

Procedure TList.Addk(inf:Tinf);
begin
if spk=Nil then
begin
New(spk);
spk^.A:=Nil;
spk^.Inf:=inf;
sp1:=spk;
end
else
begin
New(spk^.A);
spk:=spk^.A;
spk^.Inf:=Inf;
spk^.A:=Nil;
end;
end;

Procedure TList.Add1(inf:Tinf);
begin
if sp1=nil then
begin
New(sp1);
spk:=sp1;
sp^.inf:=inf;
sp1^.A:=nil;
end;
New(sp);
Sp^.inf:=inf;
Sp^.A:=Sp1;
Sp1:=Sp;
end;

Procedure TList.Readsp1(var Inf:Tinf);
begin
if sp1<>Nil then
begin
Inf:=sp1^.Inf;
sp:=sp1;
sp1:=sp1^.A;
if sp1=Nil then spk:=Nil;
Dispose(sp);
end;
end;

Procedure TList.Readspk(var Inf:Tinf);
begin
if spk<>Nil then
begin
Inf:=spk.Inf;
if sp1=spk then
begin
Dispose(spk);
sp1:=Nil;
spk:=Nil
end
else
begin
sp:=sp1;
while sp^.A<>Spk do sp:=sp^.A;
Dispose(spk);
spk:=sp;
spk^.A:=Nil;
end;
end;
end;

Procedure TList.Print(ListB1:TListBox);

begin
sp:=sp1;
while sp<>nil do
begin
ListB1.Items.Add(inttostr(Sp^.inf));
sp:=sp^.A;
end;
end;

Function TList.Ariphm:integer;
var
box:PSel;
sum,i:Integer;
begin
box:=spk;
i:=0; sum:=0;
while box<>nil do begin
Inc(i);
sum:=sum+box.inf;
box:= box.a;
end;
Result:=sum div i;
end;

Function TList.Quadr:integer;
var
box:PSel;
i,ari:Integer;
sum:Extended;
begin
ari:=Ariphm;
box:=sp1;
i:=0; sum:=0;
while box<>nil do begin
Inc(i);
sum:=sum+Sqr(box.inf-ari);
box:= box.a;
end;
sum:=sum/i;
Result:=Round(Sqrt(sum));
end;


end.
Соседние файлы в папке меняет местами нач и кон. показывает последний элемент
  • #
    15.06.20142.67 Кб12Unit1.dfm
  • #
    15.06.20141.73 Кб12Unit1.pas
  • #
    15.06.20141.6 Кб12Unit1.~dfm
  • #
    15.06.20141.67 Кб13Unit1.~pas
  • #
    15.06.20142.92 Кб12Unit2.dcu
  • #
    15.06.20142.21 Кб12Unit2.pas