
23.02.2009, 20:28
|
Прохожий
|
|
Регистрация: 13.12.2007
Адрес: Днепропетровск
Сообщения: 19
Репутация: 10
|
|
Цитата:
Сообщение от serj71298
Помогите составить функцию, возвращающую значение TRUE, еслив двух заданных одномерных массивах нет равных элементов,FALSE в противном случае.
|
Код:
var
Form1: TForm1;
length:array [1..2] of word;
Arr1:Array of real;
Arr2:Array of real;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var i,lk,k:word;
begin
length[1]:=StrToInt(Edit1.Text);
length[2]:=StrToInt(Edit2.Text);
for k:=1 to 2 do
Begin
lk:=Length[k];
for i:=1 to lk do
Stringgrid1.Cells[i,k]:=FloatToStr(StrToFloat(InputBox('','','')));
End;
SetLength(Arr1,Length[1]);
SetLength(Arr2,Length[2]);
For i:=0 to length[1]-1 do
Arr1[i]:=StrToInt(Stringgrid1.Cells[i+1,1]);
For i:=0 to length[2]-1 do
Arr2[i]:=StrToInt(Stringgrid1.cells[i+1,2]);
end;
Function Equal (var len1,len2:word):boolean;
Var i:word;
Begin
If (Len1=Len2) then
Begin
Equal:=True;
For i:=0 to (len1-1) do
If (Arr1[i]=Arr2[i]) then
Begin
Equal:=False;
Break;
End;
End
Else
End;
procedure TForm1.Button3Click(Sender: TObject);
begin
Label1.Caption:=BoolToStr(Equal(length[1],length[2]));
end;
Вот... У меня все работает...  Но если True, то в Label1 , будет 0...
А если False то -1
|