Atribuição entre matrizes 2Dx2D.
O interpretador Hall aceita a atribuição global entre os elementos de matrizes do mesmo tipo. (tipo de dado e dimensão). Veja o exemplo abaixo: São declarados quatro variáveis:
- a matriz a[] e a matriz b[] ambas bidimensionais de dimensão 3:3
- a variável i que servirá como subscritor para as linhas dos elementos das matrizes.
- a variável j que servirá como subscritor para as colunas dos elementos das matrizes.
A matriz a[] é inicializada com os valores 1,2,3,4,5,6,7,8,9. Na linha seguinte, é realizada uma atribuição dos valores da matriz a[] para a matriz b[]. Observe que, essa atribuição pode ser realizada em uma única linha de código pois as matrizes a[] e b[] são compatíveis (mesmo tipo e dimensão). Finalmente, são exibidos os elementos da matriz b[] para evidenciar que realmente a atribuição de valores foi realizada com sucesso. Veja o algoritmo abaixo:
Exemplo:
algoritmo()
{
// declara as variaveis
matriz inteiro a[3:3],b[3:3];
inteiro i;
inteiro j;
// inicializa a matriz a[]
a[] = (1,2,3,4,5,6,7,8,9);
// atribui os elementos da matriz a[] para b[]
b[] = a[];
// exibe os valores de b[]
para (i:=1 ate 3 passo 1)
{
para (j:=1 ate 3 passo 1)
{
escreva(b[i][j]);
}
}
}