Registros
Os vetores e as matrizes, como vimos anteriormente, são estruturas capazes de armazenar diversos valores do mesmo tipo. Mas, e se quiséssemos armazenar em uma estrutura diversos valores, não necessariamente de mesmo tipo? Para isto existem os registros, que são estruturas capazes de armazenar valores de tipos diferentes.
Na linguagem algorítmica, os registros são declarados através da palavra estrutura. A declaração de uma estrutura é feita da seguinte forma: estrutura <identificador>
{
campo_1: <tipo>; campo_2: <tipo>;
...
campo_n: <tipo>;
} <nomes das variáveis> (opcional) ;
No qual:
•
•
•
•
•
identificador: identificador (ou nome) do registro; campo_1: nome do primeiro campo do registro; campo_2: nome do segundo campo do registro; campo_n: nome do campo n do registro; tipo: tipo de dado de cada campo do registro.
Por exemplo: estrutura registro
{ nome: texto; idade: inteiro; sexo: caracter;
} reg;
declara uma variável registro de nome reg. Essa variável registro possui 3 campos, sendo eles: nome (de tipo texto), idade (de tipo inteiro) e sexo (de tipo caracter). Note que a variável reg é capaz de armazenar 3 valores de tipos diferentes. Para ler ou escrever variáveis do tipo registro através dos comandos leia e escreva NÃO podemos simplesmente fazer: leia(reg); escreva(reg);
Para ler ou escrever em um registro é necessário ler ou escrever em cada um de seus campos individualmente. Para acessar um campo de um registro basta
utilizar o identificador do registro (nome da variável do tipo registro) e o identificador (nome) de seus campos, na seguinte sintaxe:
<identificador>.<campo>;
No qual:
•
•
identificador: nome da variável de tipo registro; campo: nome do campo que se queira acessar.
Por exemplo, suponha que queiramos atribuir o valor 'José da Silva' ao campo nome da variável reg: reg.nome ← 'José da Silva';
No nosso exemplo, nome é um dos campos da variável de tipo registro reg. Esse campo é uma variável do tipo texto, porque