Declarando Matrizes
Para se declarar matrizes utiliza-se a palavra reservada matriz seguido do tipo e o nome da variável seguido das dimensões entre colchetes. Quando a matriz possui mais de uma dimensão, na declaração os valores devem ser separados por dois pontos. Veja os exemplos abaixo:
matriz inteiro A[5];
matriz real B[3:4];
matriz real C[3:4:5];
Observação
A palavra chave matriz está sendo usada em substituição as palavras vetor, matriz e cubos as quais eram utilizadas para se declarar aglomerados de dados de uma, duas e três dimensões respectivamente.
Referência
Os elementos de matrizes são referenciados através de seus índices colocados entre colchetes. Os índices poderão estar separados por vírgulas nos casos de matrizes de mais de uma dimensão ou poderão ser colocados cada um deles dentro de colchetes. Veja os exemplos abaixo:
Matrizes de 1 dimensão
Matrizes unidimensionais são estruturas de dados homogêneas referenciada por um único identificador e individualizados por um único índice. Matrizes unidimensionais são às vezes chamadas de vetores.
Declaração
O interpretador Hall aceita as seguintes sintaxes para se declarar matrizes unidimensionais:
matriz inteiro A[12];
vetor inteiro A[12];
A: vetor[12] de inteiros;
declare A: vetor[12] de inteiros;
Qualquer uma das declarações acima fará com que o interpretador aloque espaço na memória para os elementos da matriz unidimensional A. As declarações identificadas pelos números 2, 3 e 4 estão obsoletas e serão descontinuadas. Utilize a declaração especificada no item 1 para se declarar matrizes.
Exemplo
algoritmo( )
{
matriz real v[10];
inteiro i;
para ( i := 1 ate 10 passo 1 )
{
leia(v[i]);
}
}
Comentário:
O exemplo acima declara matriz unidimensional de nome v e de dimensão 10. Matrizes unidimensionais necessitam de apenas um índice para que seus elementos possam ser referenciados, por isso também foi declarado a variável i. Essa variável deve ser do tipo inteiro pois ela irá referenciar posições de memória. Finalmente foi utilizado o laço para na leitura dos valores para os elementos do vetor. A utilização do laço para é clássico no processamento de matrizes.
Matrizes de 2 dimensões
Matrizes bidimensionais são estruturas de dados homogêneas referenciadas por um único identificador e individualizados por dois índices. Arrays bidimensionais são às vezes chamadas de matrizes.
Declaração de matrizes
O interpretador Hall aceita as seguintes sintaxes para se declarar uma matriz:
matriz inteiro A[4:5];
A: matriz[4:5] de inteiros;
declare A: matriz[4,5] de inteiros;
Qualquer uma das declarações acima fará com que o interpretador aloque espaço na memória para os elementos da matriz bidimensional A. As declarações identificadas pelos números 2, 3 e 4 estão obsoletas e serão descontinuadas. Utilize a declaração especificada no item 1 para se declarar matrizes.
Exemplo:
Matrizes bidimensionais são variáveis homogêneas que necessitam de 2 índices para serem individualizadas.
algoritmo( )
{
matriz real m[4:5];
inteiro i;
inteiro j;
para ( i := 1 ate 4 passo 1 )
{
para ( j := 1 ate 5 passo 1 )
{
leia(m[i,j]);
}
}
}
Comentário:
O exemplo acima declara uma matriz bidimensional de nome m e de dimensões 4x5. As matrizes bidimensionais necessitam de dois índices para que seus elementos sejam referenciados, por isso também foram declaradas as variáveis i e j. Essas variáveis devem ser do tipo inteiro pois irão referenciar posições de memória. Finalmente foi utilizado o dois laços para aninhados na leitura dos valores para os elementos da matriz. A utilização de laços para aninhados é clássico no processamento de matrizes.
Matrizes de 3 dimensões
Matrizes tridimensionais são estruturas de dados homogêneas referenciadas por um único identificador e individualizados por três índices.
Declaração de matrizes tridimensionais
O interpretador Hall aceita as seguintes sintaxes para se declarar uma matriz:
matriz inteiro A[3:4:5];
declare A: matriz[3,4,5] de inteiros;
Qualquer uma das declarações acima fará com que o interpretador aloque espaço na memória para os elementos da matriz tridimensional A. As declarações identificadas pelos números 2, 3 e 4 estão obsoletas e serão descontinuadas. Utilize a declaração especificada no item 1 para se declarar matrizes.
Exemplo:
Matrizes bidimensionais são variáveis homogêneas que necessitam de 2 índices para serem individualizadas.
algoritmo( )
{
matriz real m[3:4:5];
inteiro i;
inteiro j;
inteiro k;
para ( i := 1 ate 3 passo 1 )
{
para ( j := 1 ate 4 passo 1 )
{
para ( k := 1 ate 5 passo 1 )
{
leia(m[i,j,k]);
}
}
}
Comentário:
O exemplo acima declara uma matriz tridimensional de nome m e de dimensões 3x4x5. As matrizes tridimensionais necessitam de três índices para que seus elementos sejam referenciados, por isso também foram declaradas as variáveis i, j e k. Essas variáveis devem ser do tipo inteiro pois irão referenciar posições de memória. Finalmente foi utilizado o três laços para aninhados na leitura dos valores para os elementos da matriz. A utilização de laços para aninhados é clássico no processamento de matrizes.