Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
13
Добавлен:
17.04.2013
Размер:
1.93 Кб
Скачать

{ Њ ваЁжл § ¬Є­гвле бЁб⥬ }


unit CLSY;
interface
uses ALG,GB;
procedure CLSYR(n:integer;A,B,Rx :matr;var Acr:matr);
procedure CLSYH(n:integer;A,C,Hx :matr;var Ach:matr);
procedure CLS (n:integer;A,B,C,Rx,Hx:matr;var Ao :matr);
implementation


{ б®Ўб⢥­­ п ¬ ваЁж  § ¬Є­гв®© бЁб⥬л }
{ б ॣг«пв®а®¬ б®бв®п­Ёп }
{ Acr=A-B*Rx }

procedure CLSYR(n:integer;A,B,Rx:matr;var Acr:matr);
var i,j :integer;
BR :matr;

begin
MUL(n,1,n,B,Rx,BR);
for i:=1 to n do for j:=1 to n do BR[i,j]:=-BR[i,j];
ADD(n,n,A,BR,Acr);
end;
{------------------------------------------------}


{ б®Ўб⢥­­ п ¬ ваЁж  ­ Ў«о¤ вҐ«п б®бв®п­Ёп }
{ Ach=A-Hx*C }

procedure CLSYH(n:integer;A,C,Hx:matr;var Ach:matr);
var i,j :integer;
HC :matr;

begin
MUL(n,1,n,Hx,C,HC);
for i:=1 to n do for j:=1 to n do HC[i,j]:=-HC[i,j];
ADD(n,n,A,HC,Ach);
end;
{------------------------------------------------}


{ б®Ўб⢥­­ п ¬ ваЁж  § ¬Є­гв®© бЁб⥬л }
{ б ॣг«пв®а®¬ б®бв®п­Ёп Ё ­ Ў«о¤ вҐ«Ґ¬ }
{ Ao=Ю Acr B*Rx Ю }
{ Ю 0 Ach Ю }

procedure CLS(n:integer;A,B,C,Rx,Hx:matr;var Ao:matr);
var i,j :integer;
Acr,Ach,BR :matr;

begin
CLSYR(n,A,B,Rx,Acr);
CLSYH(n,A,C,Hx,Ach);
MUL(n,1,n,B,Rx,BR);
for i:=1 to n do for j:=1 to n do
begin
Ao[ i, j]:=Acr[i,j];
Ao[ i,n+j]:=BR [i,j];
Ao[n+i, j]:=0;
Ao[n+i,n+j]:=Ach[i,j];
end;
end;
{------------------------------------------------}

end.








Соседние файлы в папке curstau