OutMass.Name: = InMAss.Name;// Переносимо назву масиву
end;
procedure TMainForm.VS_MinorMass (InMass: TVS_MassData; var OutMass: TVS_MassData);
// Знаходимо всі мінори вхідної матриці
// InMass - масив, в якому будемо шукати мінори
// OutMass - масив мінор
Var
i,
j: Integer;
begin
If InMass.M <> InMass.N Then Exit;// Вийшли, так як мартицей НЕ квадратна
For I: = 0 to InMass.M - 1 Do// пробігати по рядках
For J: = 0 To InMass.N - 1 do// пробігати по стовпцях
OutMass.Mass [I, J] : = VS_Minor (I +1, J +1, InMass);// Отримали I, J мінор і занесли в масив OutMass
OutMass.M: = InMass.M;
OutMass.N: = InMass.N;
end;
procedure TMainForm.N6Click (Sender: TObject);
begin
VS_MinorMass (MassA, MassC);
VS_ShowMass ('Мінор', MassC);
VS_ShowMassToMemo ('Мінор', MassC);
end;
procedure TMainForm.N7Click (Sender: TObject);
begin
VS_MinorMass (MassB, MassC);
VS_ShowMass ('Мінор', MassC);
VS_ShowMassToMemo ('Мінор', MassC);
end;
procedure TMainForm.N8Click (Sender: TObject);
begin
VS_MinorMass (MassC, MassC);
VS_ShowMass ('Мінор', MassC);
VS_ShowMassToMemo ('Мінор', MassC);
end;
procedure TMainForm.lll1Click (Sender: TObject);
begin
IF VS_IfMassEq (MAssA, MAssB)
Then
BEgin
VS_VerMass (MAssA, MAssB);
VS_InitMassPErebor;
VS_Init2xMassPerebot ; p> VS_SortMassPerebor;
VS_GetMAssForDet;
ResultMemo.Lines.Add ('Разом по форумі Коші - Біне:' + FloattoStr (VS_GetKoshi_Bine))
end
Else ResultMemo.Lines.Add ('Матриці не рівні')
end;
procedure TMainForm.VS_InitMassPErebor;
// Створюємо масив переборовши для обчислень Детермінант формули Коші-Біне
// Всі дії робляться над масивом MAssP
Var
I, J, Curr: Integer;
begin
Curr: = 0;// Поточний елемент масиву
SetLength (MassP, MassA.N * MassA.M);// Встановили розмірність
For I: = 0 to MassA.M -1 do// пробігати по рядках
For J: = 0 to MassA.N -1 do// пробігати по стовпцях
Begin
MassP [Curr]: = J +1;// Заповнюємо масив строками-перестановками/столбцами-перестановками
Inc (Curr);// Перейшли до слід. елеенту масиву
end;
// VS_SortMassPerebor
end;
procedure TMainForm.VS_GetMAssForDet;
// Формуріуем масив для обчислення Дет.
// Дані перестановки вже повинні зберігається в масиві MassP
// т. е вже потрібно мати Масив А і вже повинна бути виконана VS_InitMassPErebor;
Var I, J: Integer;
Det: Real;
SA, SB: String;
TempB,
TempA: TVS_MassData;// Н *...