Créditos FEC-Unicam
[size=16]Conjunto de Registros[size]
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);
[size=16]Conjunto de Registros[size]
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);