Для начала большая просьба использовать BB коды в панели ссобщения, так проще чиать код...
Далее по задаче:
Код:
var
a : array of real;//Динамический массив для разных n
n : word;//размер массива
//Тут все верно, только небольшая коррекция от меня
procedure TForm1.BitBtn1Click(Sender: TObject);
var
i : integer;
begin
memo1.Clear;
//memo2.Clear;
SetLength(a, n-1);//Установка размера динамиченского массива
for i := 1 to n do
begin
a[i-1] := random(10);
memo1.Lines.Add(inttostr(a[i-1]));
//memo2.Lines.Add(inttostr(a[i-1]));//Непонятно зачем, наверное надо
end;
end;
//Закрытие формы
procedure TForm1.BitBtn3Click(Sender: TObject);
begin
form1.close
end;
//Расчеты
procedure TForm1.BitBtn2Click(Sender: TObject);
var
i, j:integer;
Summ : real;
begin
//Заменяем меньше 2-х нулями
for i:=0 to n-1 do
if a[i] < 2 then
a[i]:=0;
//Сумма нечетных элементов массива
Summ := 0;
j : 0;
for i := 0 to n-1 do
if i mod 2 = 1 then //нечетные элементы массива
begin
Summ := Summ + a[i];
Inc(j);
end;
//Вывод результатов
memo1.Clear;
for i := 0 to n-1 do
memo1.lines.add(inttostr(a[i]));
memo1.lines.add('Сумма ' + FloatToStr(Summ));
memo1.lines.add('Количество ' + IntToStr(j));
end;
Как то так, писал по быстрому...