Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Помогите решить задачу. Матрица (http://www.tehnari.ru/f41/t51428/)

Isa 08.05.2011 23:30

Помогите решить задачу. Матрица
 
Всем привет! Помогите решить задачу. Нужно создать программу которая будет прогнозитровать валюты, она состоит из 5 юнитов. 3 из них я уже создала. 4 и 5-ая связаны с матрицей. Не имею и понятия куда нужно вписать этот код:(это только половина, остальное внизу)

unit matrices;
interface
Uses SysUtils;
type
Matrix = record
M, N : integer; { M - число строк, N - столбцов }
Data : array of array of extended;
end;
{$IFNDEF XP_CMATRIX}
{$DEFINE XP_MATRIX}
TMap = array of integer;
{$ENDIF}
Vector = array of extended;
Procedure SetSize(var A:Matrix; M,N:integer); overload; {задание размера матрицы}
Procedure Zero(var A:Matrix); overload; {заполнение матрицы нулями }
Procedure E(var A:Matrix); overload; { единичная матрица }
Function Transpose(const A:Matrix):Matrix; overload; { транспонирование матрицы }
Function Add(const A,B:Matrix):Matrix; overload; { сложение матриц }
Function Sub(const A,B:Matrix):Matrix; overload; { вычитанние матриц }
Function Mul(const A,B:Matrix):Matrix; overload; { умножение матриц }
Function AddValue(const A:Matrix; Value:extended):Matrix; overload; { сложение матрицы с числом }
Function MulValue(const A:Matrix; Value:extended):Matrix; overload; { домножение матрицы на число }
Function Negate(const A:Matrix):Matrix; overload; { измненение знака элеметнов матрицы}
Procedure DeleteRow(var A:Matrix; Row:integer); overload; Procedure DeleteCol(var A:Matrix; Col:integer); overload; Procedure DeleteCross(var A:Matrix; Row:integer); overload; Procedure InsertRow(var A:Matrix; Row:integer); overload; Procedure InsertCol(var A:Matrix; Col:integer); overload;
Function MapMatrix(const A:Matrix; const Map:TMap):Matrix; overload; Function UnmapMatrix(const A:Matrix; const Map:TMap):Matrix; overload; Function MapVector(const A:Matrix; const Map:TMap):Matrix; overload;
Function UnmapVector(const A:Matrix; const Map:TMap):Matrix; overload;
Function SubMatrix(const A:Matrix; const MapX,MapY:TMap):Matrix; overload; Function RangeMatrix(const A:Matrix; StartX,EndX,StartY,EndY:integer):Matrix; overload;
Function Vectorize(const A:Matrix):Vector; overload; Function Unvectorize(const V:Vector):Matrix; overload;
Function Inverse(const A:Matrix):Matrix; overload; Function Trace(const A:Matrix):extended; overload;
Procedure JoinBottom(var A:Matrix; const B:Matrix); overload;
Procedure JoinRight(var A:Matrix; const B:Matrix); overload; Procedure JoinDiag(var A:Matrix; const B:Matrix); overload;
implementation
Procedure SetSize(var A:Matrix; M,N:integer);
var
i : integer;
Begin
A.M:=M;
A.N:=N;
SetLength(A.Data,M);
for i:=0 to M-1 do begin
SetLength(A.Data[i],N);
end;
End;


Часовой пояс GMT +4, время: 05:56.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.