Registros (Estruturas) Registros são conjuntos de dados logicamente relacionados, que comportam tipos diferentes: numérico, literal, lógico. Até agora, as estruturas vistas comportavam dados de um único tipo. Exemplo: suponha que desejássemos armazenar os dados de funcionários de uma empresa constantes em uma ficha, contendo: INSCRIÇÃO, NOME, RUA, NÚMERO, CEP, CPF, SEXO, DATA DE NASCIMENTO, DEPENDENTES, HORAS TRABALHADAS. Com as estruturas de dados que conhecemos até agora, não seria muito fácil armazenar as informações acima. O conceito de registro visa facilitar o agrupamento de variáveis que não são do mesmo tipo, mas que guardam estreita relação lógica. Na variável composta homogênea, a individualização de um elemento é feita através de índices. Já no registro, cada componente é individualizado pela explicitação de seu identificador. Registros correspondem a conjuntos de posições de memória conhecidos por um mesmo nome e individualizados por identificadores associados a cada conjunto de posições. Os elementos do conjunto não precisam ser, necessariamente, do mesmo tipo. Registros são criados através da seguinte declaração: declare lista de identificadores registro (componentes); , onde: lista de identificadores: nomes associados aos registros declarados; componentes: declarações e/ou identificadores de variáveis, separados por vírgula. Exemplo: declarar um registro para armazenar as informações da ficha de um funcionário descrita anteriormente. declare FUNCIONARIO registro (INSCRICAO, NUMERO, DEPENDENTES, HORAS_TRAB numérico; NOME, RUA, CEP, CPF, SEXO, DATA_NASC literal); Uma vez criada a variável estrutura FUNCIONARIO, seus membros podem ser acessados por meio do ponto: FUNCIONARIO.INSCRICAO ← 7213; FUNCIONARIO.NOME ← “João da Silva”; FUNCIONARIO.RUA ← “Rua das Acácias”; FUNCIONARIO.NUMERO ← 10; FUNCIONARIO.CEP ← “75123-010”; FUNCIONARIO.CPF ← “358.982.153-00”; FUNCIONARIO.SEXO ← “M”; FUNCIONARIO.DATA_NASC ← “20/03/1968”; FUNCIONARIO.DEPENDENTES ← 2;