Aula 16: Conjunto de Registros

Assim como pode ter conjuntos de dados de mesmo um tipo referenciados por um mesmo identificador, e individualizados por índices, temos a possibilidade de fazer isso com registros. Nos exemplos abaixo exibimos duas formas de de declarar estes tipos de estruturas em Pascal. A primeira como a declaração do registro junto com a declaração do vetor(array), e a segunda como declaração do tipo cadastro (que é um registro) e a sua utilização em um vetor do tipo cadastro.

Exemplo 4.4:

bd : array[1..10] of record

          nome : string[30];
          ender : endereco;
          CPF: real;
          Sexo : char;
          nascimento : real;
          rg : real;
        end;
----------------------------------------

Type cadastro = record

          nome : string[30];
          ender : endereco;
          CPF: real;
          Sexo : char;
          nascimento : real;
          rg : real;
        end;

.
.
.

var

    bd : array[1..10] of cadastro;

Embora a tenham o mesmo sentido quanto a utilização, nesses dois tipos de declaração com vetores de índices as variáveis são referenciados de maneira diferente. Por exemplo, no primeiro caso basta acrescentar um ponto e o nome da variável para referenciar o devido campo. No segundo caso deve-se colocar o nome do tipo do vetor. A seguir, são mostrados os exemplos desses dois casos, quando imprimindo-se os valores do registro do vetor da posição i.

Exemplo 4.5:

Caso 1
writeln(bd[i].nome);
writeln(bd[i].ender.rua);
writeln(bd[i].ender.numero);
writeln(bd[i].ender.CEP);
writeln(bd[i].CPF);
writeln(bd[i].Sexo);
writeln(bd[i].nascimento);
writeln(bd[i].rg);

Caso 2
writeln(bd[i].cadastro.nome);
writeln(bd[i].cadastro.ender.rua);
writeln(bd[i].cadastro.ender.numero);
writeln(bd[i].cadastro.ender.CEP);
writeln(bd[i].cadastro.CPF);
writeln(bd[i].cadastro.Sexo);
writeln(bd[i].cadastro.nascimento);
writeln(bd[i].cadastro.rg);


Aula Anterior | Índice | Próxima Aula