Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Estrutura de Dados Tipos Abstratos de Dados Prof. Ernesto Trajano Introdução � Tipos de dados � Define um conjunto de valores que uma variável pode assumir. Ex: inteiro � valores: <..., -2, -1, 0, 1, 2, ...> � Operações: soma, subtração, multiplicação, divisão � Tipos de dados básicos (tipos primitivos) � Tipo de dado indivisível Ex: nº inteiros, nº reais, caracter, lógico . � Tipos de dados Estruturados � Agregam mais de um valor por variável � Relação estrutural entre seus elementos � Dados compostos por vários campos Ex: Arranjos, registros, sequências e conjuntos, etc. Estrutura de dados � Especificam conceitualmente dados � relação dados e domínio do problema. � Incluem operações para manipular os seus dados. � Os tipos abstratos de dados são a forma de implementação de uma estrutura de dados. Tipos Abstratos de Dados (TAD) � Estruturas que representam tipos de dados não previstos pelo núcleo das linguagens de programação. � Permite criar novos tipos de dados. � Composição: � dados � Operações � Característica: � Seperação entre conceito e implementação � Forma de definição de um novo tipo de dado e suas operações � Aplicações consumidoras de TAD Aplicação cliente� Tipos Abstratos de Dados (TAD) � Coleção bem definida de dados a serem armazenados � Grupo de operadores para manipulação desses dados � Características importantes: � Os operadores do TAD implementam regras bem definidas para manipulação dos valores armazenados; � Os valores armazenados devem ser manipulados EXCLUSIVAMENTE pelos operadores do TAD. Exemplo: O tipo Data � Dados: � dia � mês � ano � Operações: � validar uma data � calcular o dia da semana � calcular o dia do carnaval de um determinado ano � Etc. � Representação: Data dia mes ano TAD com interface � É criado em um arquivo-fonte separado. � A aplicação cliente a consome com uma biblioteca � A aplicação cliente acessa a interface (funcionalidades) do TAD. � Mudanças nas aplicações não alteram Definido e Usando um TAD Ex. Implemente uma aplicação em C++ que permita representar uma data usando o conceito de TAD Tipo Abstrato de Dado. � A aplicação deve fornecer as seguintes funções: - inicializarData : Recebe os dados de uma data (dia, mês e ano) e armazena da TAD. - imprimirData : Obtém os dados da TAD e exibe a data no formato: DD/MM/AAAA. Definido e Usando um TAD Definido e Usando um TAD � Como fazer para reaproveitar (fazer reuso) da solução do TAD para data em outras aplicações sem realizar o copiar e colar, mas sim fazendo reuso de biblioteca de função ? Definido um TAD Implementando um TAD Usando um TAD Exercício 1 � Implemente uma aplicação em C++ que simule uma Agenda Eletrônica composta por até 20 contatos. - Os dados de um Contato (nome, fone, email) devem ser definidos usando o conceito de TAD Tipo Abstrato de Dado. - A aplicação deve fornecer as seguintes operações: * inicializarContato: Recebe os dados de um contato e armazena no TAD. * incluirContato: Recebe um contato e insere na agenda. * consultarContato: Recebe o nº do contato e retorna o TAD do contato. * exibirContato : Obtém os dados da TAD e exibe no formato: Nº do contato: <nº do contato> Contato: <nome do contato.> Fone: <nº do telefone do contato> email: <email do contato>