(Parte 6 de 8)

No tópicos anteriores, vocŒ teve um contato com tØcnicas de programaçªo que envolveram o uso de estruturas de dados homogŒneas, atravØs da utilizaçªo de matrizes de uma e duas dimensıes. Observou que somente foi possível trabalhar com um tipo de dado por matriz. No momento em que se precisou trabalhar com dois tipos de dados diferentes, foi necessÆria a utilizaçªo tambØm de duas matrizes, uma de cada tipo.

Estrutura de um Registro Agora vocŒ terÆ contato com a utilizaçªo da principal estrutura de dados, o registro, a qual consiste em trabalhar vÆrios dados de tipos diferentes ( em uma mesma estrutura. Por esta razªo, este tipo de dado Ø considerado heterogŒneo.

Atribuiçªo de Registros

Os tipos registro devem ser declarados ou atribuídos antes da variÆveis, pois poderÆ ocorrer a necessidade de se declarar uma variÆvel com o tipo registro anteriormente atribuído.

Para se declarar um tipo registro em portuguŒs estruturado deverÆ ser utilizada a instruçªo tipo em conjuntocom a instruçªoregistro...fim_registro, conforme a sintaxe indicada abaixo.

Tipo <identificador> = registro

<lista dos campos e seus tipos> fim_registro var <variÆvel> : <identificador>

Onde indentificador Ø o nome do tipo registro em caracteres maiœsculos, em itÆlico como as variÆveis, e lista dos campos e seus tipos Ø a relaçªo de variÆveis que serªo usadas como campos, bem como o seu tipo de estrutura de dados, podendo ser: real, inteiro, lógico ou caractere.

Após a instruçªovar, deverÆ ser indicada a variÆvel tipo registro e a declaraçªo do seu tipo de acordo com um identificador definido anteriormente. Perceba que a instruçªotipo deverÆ ser utilizada antes da instruçªovar, pois ao definir um tipo de variÆvel, pode-se fazer uso deste tipo definido.

Tomando como exemplo a proposta de se criar um registro denominado

ALUNO, cujos campos sªo NOME, NOTA1, NOTA2, NOTA3 e NOTA4, este seria assim declarado:

tipo

CAD_ALUNO =registro

NOME : caractere NOTA1 : real NOTA2 : real NOTA3 : real NOTA4 : real fim_registro var ALUNO : CAD_ALUNO

Observe que Ø especificado um registro denominado CAD_ALUNO, o qual Ø um conjunto de dados heterogŒneos ( um campo tipo caractere e quatro do tipo real)

. Desta forma Ø possível guardar em uma mesma estrutura vÆrios tipos diferentes de dados. A título de comparaçªo, pode-se dizer que um tipo registro Ø tambØm um vetor ( matriz de uma dimensªo)

. Pois tem-se a variÆvel ALUNO do tipo cad_aluno como um vetor com os índices NOME, NOTA1, NOTA2, NOTA3 e NOTA4.

Leitura de Registros

A leitura de um registro Ø efetuada com a instruçªo leia seguida do nome da variÆvel registro e seu campo correspondente separado por um caractere ?. ? ponto.

Programa Leitura tipo

CAD_ALUNO =registro

NOME : caractere NOTA1 : real NOTA2 : real NOTA3 : real NOTA4 : real fim_registro var ALUNO : CAD_ALUNO Início

Fim

Escrita de Registros

O processo de escrita de um registro Ø feito com a instruçªo escreva de forma semelhante ao processo de leitura.

Programa Escrita tipo

CAD_ALUNO =registro

NOME : caractere NOTA1 : real NOTA2 : real NOTA3 : real NOTA4 :real fim_registro var ALUNO : CAD_ALUNO Início

Escreva ( Aluno.Nome ) Escreva (

Aluno.Nota1)

Escreva (

Aluno.Nota2)

Escreva (

Aluno.Nota3)

Escreva (

Aluno.Nota4) Fim

Estrutura de um Registro de Conjuntos

No tópico anterior, foi apresentado o conceito de se trabalhar com um registro. No ponto de aprendizado em que estamos, podemos atØ jurar que vocŒ esteja perguntando: SerÆ que nªo possível definir um vetor ou mesmo uma matriz dentro de um registro, para nªo ser necessÆrio utilizar somente os tiposprimitivos de dados? Isto Ø realmente possível. Considere ainda o exemplo do registro ALUNO, onde temos o campo NOME tipo caractere e mais quatro campos tipo real para o armazenamento de duas notas sendo, NOTA1, NOTA2, NOTA3 e NOTA4. Veja que se pode definir um vetor chamado NOTA com quatro Indices, uma para cada nota.

Atribuiçªo de Registros de Conjuntos

Tomando como exemplo a proposta de se criar um registro denominado

ALUNO, cujas notas serªo informadas em um vetor, este seria bastante declarado:

tipo

BIMESTRE =conjuno [1..4] de real CAD_ALUNO =registro

NOME : caractere NOTA : BIMESTRE fim_registro

Observe que ao ser especificado o registro CAD_ALUNO, existe nele um campo chamado NOTA do tipo bimestre, onde bimestre Ø a especificaçªo de um tipo de conjunto matricial de um œnica dimensªo com capacidade para quatro elementos. Veja que o tipo de bimestre foi anteriormente definido, pois se caracteriza por um tipo criado, assim como o tipo cad_aluno atribuído à variÆvel de registro ALUNO.

Leitura de Registro de Conjuntos

A leitura de um registro de conjunto Ø efetuada com a instruçªoleia geralmente dentro de um laço de repitaçªo. Assim sendo, observe o código abaixo:

Programa Leitura tipo

BIMESTRE =conjunto[1..4] dereal CAD_ALUNO =registro

NOME :caractere NOTA :bimestre fim_registro var

(Parte 6 de 8)

Comentários