Помогите решить
1. Дан массив целых чисел из n элементов, заполненный случайным образом числами из промежутка [-10,10]. Найти сумму элементов, имеющих нечетное значение.
2. Вывести индексы тех элементов, значения которых больше заданного числа А.
3. Определить, есть ли в данном массиве положительные элементы, кратные заданному числу К.
Часть программы
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
GroupBox1: TGroupBox;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Label1: TLabel;
Button1: TButton;
Button2: TButton;
Edit6: TEdit;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
N,K:integer;
M:array of integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
Randomize;
N:=strtoint(edit1.Text);
setlength(M,N);
edit2.Text:='';
for i:=0 to N-1 do
begin
M[i]:=round(sin(Random(10))*10);
edit2.Text:=edit2.Text+' '+inttostr(M[i]);
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
i:integer;
sum, kol:integer;
begin
edit3.Text:='';
edit4.Text:='';
edit5.Text:='';
sum:=0;
kol:=0;
K:=1;
for i:=0 to N-1 do
begin
if checkbox1.Checked then
if (M[i] mod 2=0) then sum:=sum+M[i];
if checkbox2.Checked then
if (M[i] div 100 = 0) and (M[i]<>0) then
kol:=kol+1;
if checkbox3.Checked then
If (M[i]>0) and (M[i] div K=0) then
K:=1;
end;
if checkbox1.checked then edit3.text:=inttostr(sum);
if checkbox2.Checked then edit4.Text:=inttostr(kol);
if checkbox3.Checked then edit5.Text:=inttostr(K);
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
K:=strToint(Edit6.Text);
end;
end.
Админ: Пользуемся тегами для оформления кода!
Укажите ошибки!