Você está na página 1de 15

ESTRUTURAS DE DADOS

• LÓGICA
A lógica é a ciência que estuda as leis e os critérios de
validade que regem o pensamento e a demonstração, ou
seja, ciência dos princípios formais do raciocínio. A
lógica é usada no dia a dia das pessoas que trabalham
com computação para solucionar problemas de forma
eficiente.

SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Programas são “formulações concretas de algoritmos
abstratos, baseados em representações e estruturas
específicas de dados”.

Estruturas de dados são usadas no algoritmo para


representar as informações do problema a ser
resolvido.

Um algoritmo é uma norma executável para


estabelecer um certo efeito desejado, que
na prática será geralmente a obtenção de uma solução 2
a um certo tipo de problema.
SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Tipos de dados:
Definição do conjunto de valores (domínio) que uma
variável pode assumir.
Ex: inteiro
< … -2, -1, 0, +1, +2, … >

lógico
< verdadeiro, falso >

SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Tipos de dados:
• Tipos básicos (primitivos)
inteiro, real, e caractere
• Tipos de dados estruturados (construídos)
arranjos (vetores e matrizes)
estruturas
seqüências (conjuntos)
referências (ponteiros)
• Tipos definidos pelo usuário 4

SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Tipos e Estruturas de dados:
• Tipos de dados básicos
 Fornecidos pela Linguagem de Programação
• Estruturas de Dados
 Estruturação conceitual dos dados
 Reflete um relacionamento lógico entre dados,
de acordo com o problema considerado

SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Vetores:
Um vetor é um arranjo de elementos armazenados na
Memória Principal, um após o outro, todos com o mesmo
nome. A idéia é a mesma de uma matriz linha da
matemática, isto é, várias colunas e uma linha.

Esse é um vetor de 8 elementos (chamaremos de vt[8], isto


é, tem 8 variáveis, todas com o mesmo nome e diferentes
por sua posição dentro do arranjo que é indicada por um
índice. Quando se tem somente uma linha, podemos
omiti-la e colocar somente a coluna.
vt[0] = 2, vt[1] = 4, vt[2] = 5, vt[3] = 8, vt[4] = 12, vt[5] = 3, 6
vt[6] = 56, vt[7] = 34
SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Matrizes:
A estrutura da matriz é semelhante à do vetor, sendo que,
pode possuir n dimensões. Desta forma para fazer
referência aos elementos de uma matriz, precisaremos de
tantos índices quantos forem suas dimensões. Exemplo:
uma matriz de 2 linhas e 5 colunas “mz[2] [5]”:

mz[0] [0] = A, mz[0] [1] = B, mz[0] [3] = D, mz[1] [1] = n,


mz[1] [2] = k, mz[1] [4] = x

SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Modularização:
A ausência de uma metodologia para a construção de
programas conduzia a programas geralmente cheios de
erros e com altos custos de desenvolvimento que,
conseqüentemente, exigiam custos elevados para a sua
correção e manutenção futuras. A programação
estruturada foi o resultado de uma série de estudos e
propostas de metodologias para desenvolvimento de
software. Uma das técnicas aplicadas na programação
estruturada é a modularização.

SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Modularização:
A modularização é um processo que aborda os aspectos da
decomposição de algoritmos em módulos. Módulo é um
grupo de comandos, constituindo um trecho do algoritmo,
com uma função bem definida e o mais independente
possível em relação ao resto do algoritmo.
Exemplo da descrição estrutural da modularização:
início
Leia os dados do empregado
Ative o módulo “Cálculo das vantagens”
Ative o módulo “Cálculo das deduções”
SALARIOLIQ ← VANTAGENS – DEDUÇÕES
Escreva o salário 9
fim.
SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Modularização:
Recomenda-se que os módulos de um programa tenham
um tamanho limitado, pois módulos muito grandes são
difíceis de ser compreendidos e, em geral, são
multifuncionais. Todo módulo é constituído por uma
seqüência de comandos que operam sobre um conjunto de
objetos, que podem ser globais ou locais.

Objetos globais são entidades que podem ser usadas em


módulos internos a outro módulo do algoritmo onde foram
declaradas. Objetos locais são entidades que só podem ser
usadas no módulo do algoritmo onde foram declaradas.
10
São exemplos de objetos globais ou locais: variáveis,
arquivos, outros módulos, etc.
SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Modularização:
Benefícios da Modularização

 A independência do módulo permite uma manutenção mais


simples e evita efeitos colaterais no restante do algoritmo;

 A elaboração do módulo pode ser feita independentemente e


em época diferente do restante do algoritmo;

 Testes e correções dos módulos podem ser feitos separados;

 Um módulo pode ser utilizado em outros algoritmos que


requeiram o mesmo processamento por ele executado.
11

SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Modularização:
Procedimentos e Funções

Procedimentos (ou sub-rotinas) e funções são módulos


hierarquicamente subordinados a um algoritmo, comumente
chamado de módulo principal. Da mesma forma um
procedimento ou uma função pode conter outros
procedimentos e funções aninhados. A declaração de um
procedimento ou função é constituída de um cabeçalho, que a
identifica e contém seu nome e uma lista de parâmetros
formais, e de um corpo que contém declarações locais e os
comandos.
12

SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Modularização:
Procedimentos e Funções

Declaração de procedimento
procedimento NOME (lista-de-parâmetros-formais)
declarações dos objetos locais ao procedimento
comandos do procedimento
fim procedimento

Chamada do procedimento
NOME (lista-de-parâmetros-atuais)

13
Obs.: Parâmetros atuais também podem ser chamados de
argumentos.
SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Modularização:
Procedimentos e Funções
As funções têm a característica de retornar ao algoritmo que as chamou um
valor associado ao nome da função.
Criação de função
função tipo NOME (lista-de-parâmetros-formais)
declarações dos objetos locais a função
comandos da função
fim função
Chamada da função
NOME (lista-de-parâmetros-atuais)
Como esta função irá retornar um valor, este pode ser atribuído a alguma
variável, contanto que esta seja de tipo compatível.
A ← NOME (lista-de-parâmetros-atuais)
Ao terminar a execução dos comandos de uma sub-rotina ou função, o fluxo 14
de controle retorna ao comando seguinte àquele que provocou a chamada.
SAMUEL RODRIGUES
ESTRUTURAS DE DADOS
Modularização:
Modos de Passagem de Parâmetros
A vinculação entre módulos pode ser feita através da transferência ou
passagem de parâmetros, que associam parâmetros atuais com
parâmetros formais. Dentre os modos de transferência de
parâmetros, pode-se destacar: a passagem por valor e a passagem
por referência.

Na passagem de parâmetros por valor, as alterações feitas nos


parâmetros formais, dentro do procedimento ou função, não se
refletem nos parâmetros atuais. O valor do parâmetro atual é copiado
no parâmetro formal, na chamada do procedimento ou função.

Na passagem de parâmetros por referência, toda alteração feita num


parâmetro formal corresponde a mesma alteração feita no seu 15
parâmetro atual associado
SAMUEL RODRIGUES

Você também pode gostar