Задание 4: Создать процедуру, вычисляющую количество заданных элементов(чисел) в одномерном массиве.
Задание 5: Создать функцию, вычисляющую количество заданных элементов (чисел)в одномерном массиве.
задание 4 и 5 я решил сделать сразу вместе, через процедуру получилось сделать а вот через функцию никак, выдает ошибку
Код:
procedure chisla (var n:integer; a:array of integer);
begin
n:=length(a);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i,n,x:Integer;
a:array of integer;
begin
setlength(a,0);
for i:=0 to StringGrid1.ColCount-1 do
try
n:=strtoint(StringGrid1.Cells[i,0]);
setlength(a,length(a)+1);
a[high(a)]:=n;
except
end;
chisla(x,a);
label1.Caption:=inttostr(x);
end;
function chisla2(n:integer):integer;
var
i,l,x:Integer;
a:array of integer;
begin
setlength(a,0);
for i:=0 to 100 do
try
l:=a[i];
setlength(a,length(a)+1);
a[high(a)]:=l;
except
end;
n:=a[high(a)];
result:=n
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Label1.Caption:=inttostr(chisla2(n));
end;
end.
вот сама лаба:
Новая папка (2).rar