IMath.Mtranspose

Синтаксис Fore

Mtranspose(Data: Array): Array;

Синтаксис Fore.NET

Mtranspose(Data: System.Array): System.Array;

Параметры

Data. Одномерный или двумерный числовой массив.

Описание

Метод Mtranspose возвращает транспонированный массив.

Комментарии

Транспонирование - преобразование массива, в результате которого столбцы становятся строками, а строки - столбцами.

Пример Fore

Добавьте ссылку на системную сборку MathFin.

Sub UserProc;
Var
    Matr, MInv: Array Of Double;
    i, j: integer;
Begin
    // Создаем двумерный массив
    Matr := New Double[33];
    Matr[00] := 1; Matr[01] := 9; Matr[02] := 9;
    Matr[10] := 2; Matr[11] := 15; Matr[12] := 0;
    Matr[20] := 8; Matr[21] := 2; Matr[22] := 13;
    Debug.WriteLine("Массив");
    // Выводим созданный массив в консоль
    For i := 0 To Matr.GetUpperBound(1Do
        For j := 0 To Matr.GetUpperBound(2Do
            Debug.Write(Matr[i, j].ToString + "  ");
        End For;
        Debug.WriteLine("");
    End For;
    // Транспонируем массив
    MInv := Math.Mtranspose(Matr);
    Debug.WriteLine("Транспонированный массив");
    // Выводим транспонированный массив в консоль
    For i := 0 To MInv.GetUpperBound(1Do
        For j := 0 To MInv.GetUpperBound(2Do
            Debug.Write(MInv[i, j].ToString + "  ");
        End For;
        Debug.WriteLine("");
    End For;
End Sub UserProc;

В результате выполнения примера переменная MInv будет содержать транспонированный массив Matr, и оба массива будут выведены в окно консоли.

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.MathFin;

Public Shared Sub Main(Params: StartParams);
Var
    Matr, MInv: System.Array;
    M: Prognoz.Platform.Interop.MathFin.Math;
    i, j: integer;
Begin
    // Создаем двумерный массив
    Matr := New double[33];
    Matr[00] := 1; Matr[01] := 9; Matr[02] := 9;
    Matr[10] := 2; Matr[11] := 15; Matr[12] := 0;
    Matr[20] := 8; Matr[21] := 2; Matr[22] := 13;
    System.Diagnostics.Debug.WriteLine("Массив");
    // Выводим созданный массив в консоль
    For i := 0 To Matr.GetUpperBound(0Do
        For j := 0 To Matr.GetUpperBound(1Do
            System.Diagnostics.Debug.Write(Matr[i, j] + "  ");
        End For;
        System.Diagnostics.Debug.WriteLine("");
    End For;
    M := New Prognoz.Platform.Interop.MathFin.Math.Create();
    // Транспонируем массив
    MInv := M.Mtranspose(Matr);
    System.Diagnostics.Debug.WriteLine("Транспонированный массив");
    // Выводим транспонированный массив в консоль
    For i := 0 To MInv.GetUpperBound(0Do
        For j := 0 To MInv.GetUpperBound(1Do
            System.Diagnostics.Debug.Write(MInv[i, j] + "  ");
        End For;
        System.Diagnostics.Debug.WriteLine("");
    End For;
End Sub;

См. также:

IMath