Desenho de personagem de desenho animado

Descrição gerada automaticamente com confiança baixa

Logotipo

Descrição gerada automaticamente

Ícone

Descrição gerada automaticamente


Algoritmos e Estruturas de Dados

Prof. Márcio Sarroglia Pinho


Tipos Abstratos de Dados


Tipos Abstratos de Dados, ou TADs são modelos matemáticos de estruturas de dados que definem:

Um TAD define o que se pode fazer com uma estrutura de dados, mas não define como.

Em uma linguagem de programação um tipo de dado define que tipo de informação pode ser armazenada em uma variável. Já um tipo estruturado de dado, define um conjunto de dados que são agrupados sob um mesmo nome, como um vetor ou uma struct.
Já um TAD define, além do tipo estruturado de dados,  as funções de acesso aos dados, quais os parâmetros para estas funções e quais os retornos estas funções geram quando se acessam os dados.

Em linguagens como C, um TAD se concretiza através de um tipo de dado(em geral uma struct) que define variáveis que armazenam dos dados e de um conjunto de funções que operam sobre estas variáveis.

Em linguagens como C++, um TAD é definido por meio de uma classe, que possui métodos de acesso aos dados.

Se pensarmos em uma TAD que decreva um ponto no plano, podemos ter em C:


typedef struct {
   double x, y;
} PONTO;

void inicializaPonto(PONTO *p, int x, int y);
void imprimePonto(PONTO p);
void setPonto(PONTO *P, int x, int y);
void getPonto(PONTO P, int *x, int *y
);
  
Já em C++, a TAD equivalente teria a seguinte forma:

class PONTO{
    int x,y;
public:
    void inicializaPonto(int x, int y);
    void imprimePonto();
    void setPonto(int x,int y);
    CPonto getPonto();
};

Utilizando a ideia de TAD, consegue-se implementar três conceitos fundamentais de Orientação a Objetos, quais sejam:


FIM.







,