Sie sind auf Seite 1von 5

MINISTRIO DA EDUCAO UNIVERSIDADE TECNOLGICA FEDERAL DO PARAN CAMPUS PONTA GROSSA CURSO SUPERIOR DE TEC.

EM ANLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA: Algoritmos OBJETIVOS: Algoritmos Estruturas de Dados Heterogneas (Registros)

8. Estrutura de Dados Heterogneas (Registros) uma estrutura composta por um conjunto de variveis de tipos diferentes, primitivos e/ou construdos, logicamente relacionados que podem ser referenciados por um mesmo nome (identificador do tipo registro) ou individualmente. Este tipo de estrutura utilizada para relacionar dados pertencentes a um mesmo objeto. Ex: fichrio de um funcionrio. Sintaxe: tipo <nome_do_tipo> = registro <descrio> fim registro;

onde: nome_do_tipo: um identificador descrio: <tipo_primitivo> : <identifcador>; <tipo_primitivo> : <ident_1,..., ident_n>;

8.1. Atribuio Sintaxe: <nome_reg [ndice] >.<nome_campo> EXPRESSO; <nome_reg>.<nome_campo> EXPRESSO;

8.2. Leitura Sintaxe: leia(<nome_do_registro>[ndice].<nome_do_campo>); leia(<nome_do_registro>.<nome_do_campo>); 8.3. Escrita Sintaxe: escreva (<nome_do_registro>[ndice].<nome_do_campo>); escreva (<nome_do_registro>.<nome_do_campo>);

MINISTRIO DA EDUCAO UNIVERSIDADE TECNOLGICA FEDERAL DO PARAN CAMPUS PONTA GROSSA CURSO SUPERIOR DE TEC. EM ANLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA: Algoritmos OBJETIVOS: Algoritmos Estruturas de Dados Heterogneas (Registros)

Exemplo 1: NOME: FONE: SALARIO: IDADE: F1 algoritmo exemplo1 tipo FUNCIONARIO= registro caracter: NOME[15], FONE[10]; real: SALARIO; inteiro: IDADE; fim registro; FUNCIONARIO: F1, F2, F3; //3 registros do tipo funcionrio Procedimento CADASTRAR(); Procedimento MOSTRAR(); incio inteiro: OP; OP <- 1; enquanto (OP<>3) faa inicio escreva(1 - Cadastrar); escreva(2 - Consulta); escreva(3 - Sair); leia(OP); escolha (OP) incio caso 1: incio CADASTRAR(); fim; caso 2: incio MOSTRAR(); fim; caso 3: incio escreva(FIM!); fim; caso contrrio: incio escreva(Op. invlida); fim; fim; //escolha fim; //enquanto fim; //programa principal Procedimento CADASTRAR() incio escreva(Informe nome do funcionrio 1); leia(F1.NOME); escreva(Informe telefone do funcionrio 1); leia(F1.FONE); escreva(Informe salrio do funcionrio 1); leia(F1.SALARIO); 2 NOME: FONE: SALARIO: IDADE: F2 NOME: FONE: SALARIO: IDADE: F3

MINISTRIO DA EDUCAO UNIVERSIDADE TECNOLGICA FEDERAL DO PARAN CAMPUS PONTA GROSSA CURSO SUPERIOR DE TEC. EM ANLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA: Algoritmos OBJETIVOS: Algoritmos Estruturas de Dados Heterogneas (Registros)

escreva(Informe idade do funcionrio 1); leia(F1.IDADE); escreva(Informe nome do funcionrio 2); leia(F2.NOME); escreva(Informe telefone do funcionrio 2); leia(F2.FONE); escreva(Informe salrio do funcionrio 2); leia(F2.SALARIO); escreva(Informe idade do funcionrio 2); leia(F2.IDADE); escreva(Informe nome do funcionrio 3); leia(F3.NOME); escreva(Informe telefone do funcionrio 3); leia(F3.FONE); escreva(Informe salrio do funcionrio 3); leia(F3.SALARIO); escreva(Informe idade do funcionrio 3); leia(F3.IDADE); fim; Procedimento MOSTRAR() incio escreva(Nome do funcionrio 1:, F1.NOME); escreva(Telefone do funcionrio 1:,F1.FONE); escreva(Salrio do funcionrio 1: , F1.SALARIO); escreva(Idade do funcionrio 1:, F1.IDADE); escreva(Nome do funcionrio 2:, F2.NOME); escreva(Telefone do funcionrio 2:,F2.FONE); escreva(Salrio do funcionrio 2: , F2.SALARIO); escreva(Idade do funcionrio 2:, F2.IDADE); escreva(Nome do funcionrio 3:, F3.NOME); escreva(Telefone do funcionrio 3:,F3.FONE); escreva(Salrio do funcionrio 3: , F3.SALARIO); escreva(Idade do funcionrio 3:, F3.IDADE); fim; fim algoritmo. Exemplo 2: //utilizando VETORES NOME: FONE: SALARIO: IDADE: 1 algoritmo exemplo1 tipo FUNCIONARIO= registro caracter: NOME[15], FONE[10]; real: SALARIO; inteiro: IDADE; fim registro; FUNCIONARIO: VFUNC[1:100]; //vetor de registros do tipo funcionrio, com 100 posies inteiro: CONT; 3 NOME: FONE: SALARIO: IDADE: 2 NOME: FONE: SALARIO: IDADE: 3 NOME: FONE: SALARIO: IDADE: 4 NOME: FONE: SALARIO: IDADE: 5

MINISTRIO DA EDUCAO UNIVERSIDADE TECNOLGICA FEDERAL DO PARAN CAMPUS PONTA GROSSA CURSO SUPERIOR DE TEC. EM ANLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA: Algoritmos OBJETIVOS: Algoritmos Estruturas de Dados Heterogneas (Registros)

Procedimento CADASTRAR(); Procedimento MOSTRAR(); incio inteiro: OP; OP <- 1; CONT<-1; enquanto (OP<>3) faa inicio escreva(1 - Cadastrar); escreva(2 - Consulta); escreva(3 - Sair); leia(OP); escolha (OP) incio caso 1: incio CADASTRAR(); fim; caso 2: incio MOSTRAR(); fim; caso 3: incio escreva(FIM!); fim; caso contrrio: incio escreva(Op. invlida); fim; fim; //escolha fim; //enquanto fim; //programa principal Procedimento CADASTRAR() incio enquanto(CONT<=100) faa inicio escreva(Informe nome do funcionrio:); leia(VFUNC[CONT].NOME); escreva(Informe telefone do funcionrio 1); leia(VFUNC[CONT].FONE); escreva(Informe salrio do funcionrio 1); leia(VFUNC[CONT].SALARIO); escreva(Informe idade do funcionrio 1); leia(VFUNC[CONT].IDADE); CONT<-CONT+1; fim; se (CONT>100) ento escreva(Vetor completo!!); fim; Procedimento MOSTRAR() incio inteiro: CONT1; CONT1<-1; se (CONT<=1) ento escreva(No existem elementos cadastrados!!); seno incio enquanto(CONT1<=100) faa 4

MINISTRIO DA EDUCAO UNIVERSIDADE TECNOLGICA FEDERAL DO PARAN CAMPUS PONTA GROSSA CURSO SUPERIOR DE TEC. EM ANLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA: Algoritmos OBJETIVOS: Algoritmos Estruturas de Dados Heterogneas (Registros)

inicio escreva(Nome do funcionrio 1:, VFUNC[CONT1].NOME); escreva(Telefone do funcionrio 1:, VFUNC[CONT1].FONE); escreva(Salrio do funcionrio 1: ,VFUNC[CONT1].SALARIO); escreva(Idade do funcionrio 1:, VFUNC[CONT1].IDADE); fim;//enquanto fim; //seno fim; //procedimento fim algoritmo.

Das könnte Ihnen auch gefallen