ADDCOL

Sintaxe:

ADDCOL(matrixname, vector, column_number)

Insere os valores no vector numa nova coluna, inserida antes de column_number na matriz especificada. O número de valores no vetor deve ser igual ao número de linhas na matriz.

ADDROW

Sintaxe:

ADDROW(matrixname, vector, row_number)

Insere os valores no vector numa nova linha, inserida antes de row_number na matriz especificada. O número de valores no vetor deve ser igual ao número de colunas na matriz.

Exemplo com uso de ADDROW e ADDCOL

O exemplo a seguir demonstra o uso dos operadores ADDROW e ADDCOL:

LOCAL printMatriz(matriz)
BEGIN
    LOCAL out, i, j;
    LOCAL dimensao = SIZE(matriz);
    FOR i FROM 1 TO dimensao(1) DO
        out := "";
        FOR j FROM 1 TO dimensao(2) DO
            out := out + matriz(i,j) + " " ;
        END;
    PRINT(out);
    END;
END;

EXPORT Matriz()
BEGIN
    PRINT();
    LOCAL matriz := [[1,2, 3], [4, 5, 6]];
    PRINT("Antes da adição de linha/coluna:");
    printMatriz(matriz);

    ADDROW(matriz, [7, 8, 9], 2);
    PRINT("Depois da adição da linha:");
    printMatriz(matriz);

    ADDCOL(matriz, [10, 11, 12], 3);
    PRINT("Depois da adição da coluna:");
    printMatriz(matriz);

END;

Foi criado uma função para melhor representar a matriz, chamada printMatriz, que recebe uma matriz como argumento e apresenta os valores no terminal.

O resultado:



DELCOL

Sintaxe:

DELCOL(name, column_number) 

Elimina a coluna column_number da matriz com nome name.

DELROW

Sintaxe:

DELROW(name, row_number)

Elimina a linha row_number da matriz com nome name.

Exemplo com uso de DELCOL e DELROW

Um exemplo de uso de DELCOL e DELROW:

LOCAL printMatriz(matriz)
BEGIN
    LOCAL out, i, j;
    LOCAL dimensao = SIZE(matriz);
    FOR i FROM 1 TO dimensao(1) DO
        out := "";
        FOR j FROM 1 TO dimensao(2) DO
            out := out + matriz(i,j) + " " ;
        END;
    PRINT(out);
    END;
END;

EXPORT Matriz()
BEGIN
    PRINT();
    LOCAL matriz := [[1,2, 3], [4, 5, 6], [7, 8, 9]];
    PRINT("Antes da apagar linha/coluna:");
    printMatriz(matriz);

    DELROW(matriz, 2);
    PRINT("Depois de apagar a linha 2:");
    printMatriz(matriz);

    DELCOL(matriz, 2);
    PRINT("Depois de apagar a coluna 2");
    printMatriz(matriz);
END;

E a tela resultante: