Estruturas de Dados. Profº Carlos Alberto Teixeira Batista

Tamanho: px
Começar a partir da página:

Download "Estruturas de Dados. Profº Carlos Alberto Teixeira Batista"

Transcrição

1 Estruturas de Dados Profº Carlos Alberto Teixeira Batista

2 [...] A abstração é nossa mais importante ferramenta mental para lidar com a complexidade. Portanto, um problema complexo não poderia ser visto imediatamente em termos de instruções de computador [...] mas, antes, em termos de entidades naturais ao próprio problema, abstraído de maneira adequada. Niklaus Wirth (1989)

3 Significados do termo abstrair Segundo o Dicionário Aurélio Considerar isoladamente um ou mais elementos de um todo. Em programação Imaginar um problema maior dividido em problemas menores, para resolvê-los isoladamente e, posteriormente, uni-los, produzindo a solução do problema.

4 Um Tipo Abstrato de Dados (TAD) consiste em um módulo que define um novo tipo de dado e um conjunto de operações para manipular dados desse tipo. É também conhecido como Tipo de Dado Abstrato (TDA) ou tipo de dados definido pelo usuário. Os TAD s encapsulam um tipo de dados e seus valores e definem ou exportam uma interface externa de procedimentos que acessam e manipulam os dados.

5 Separação entre conceito (definição do tipo) e implementação das operações Visibilidade da estrutura interna do tipo fica limitada às operações Aplicações que usam o TAD são denominadas clientes do tipo de dado Cliente tem acesso somente à forma abstrata do TAD

6 Um TAD é um tipo de dado que satisfaz as condições: A representação ou a definição do tipo e as operações sobre variáveis desse tipo estão contidas numa única unidade sintática: MÓDULO A representação interna do tipo (a implementação) não é visível de outras unidades sintáticas, de modo que só as operações oferecidas na definição do tipo podem ser usadas com as variáveis desse tipo.

7 Acesso e mudanças nos dados podem somente ser feitos através dos procedimentos de interface. Um Tipo Abstrato de Dados apresenta as seguintes características: Uma definição de tipo que permite que as unidades de programa declarem suas variáveis, mas oculta a sua representação; Um conjunto de operações para manipular objetos do tipo.

8 Vantagens: Programas organizados em unidades lógicas que podem ser compiladas separadamente; Modificações nas representações ou operações do tipo são feitas em uma única área do programa; Clientes não veem os detalhes da representação, portanto seu código não depende dessa representação;

9 Vantagens: Confiabilidade. Clientes não podem mudar as representações intencionalmente ou acidentalmente. Reutilização. Possibilidade de utilização do mesmo TAD em diversas aplicações diferentes

10 Projeto de um TAD Envolve a escolha de operações adequadas para uma determinada estrutura de dados, definindo seu comportamento Dicas para definir um TAD Definir pequeno número de operações; O conjunto de operações deve ser suficiente para realizar as computações necessárias às aplicações que utilizarem o TAD; cada operação deve ter um propósito bem definido, com comportamento constante e coerente;

11 Exemplo 1: array como tipo abstrato de dados Nome do tipo: vetor Componentes: número de elementos e espaço de armazenamento. Operações: produto_por_escalar (x, k) y soma_dos_elementos (x) a num_elementos (x) n leitura() x imprime (x) Consideremos: x,y do tipo vetor k, n do tipo inteiro a do tipo real

12 Exemplo 1: array como tipo abstrato de dados PROBLEMA Ler um conjunto de notas de alunos, calcular a média da turma, imprimir as notas lidas e a média da turma.

13 Exemplo 1: array como tipo abstrato de dados SOLUÇÃO

14 Exemplo 2: criando tipo abstrato de dados conta Nome do tipo: conta Componentes: registro com os campos referentes aos dados da conta e espaço de armazenamento. Operações: abrirconta (c) creditar (c, v) debitar (c, v) transferir(c1, c2, v) mostrardados(c) Consideremos: c, c1 e c2 do tipo conta v do tipo real

15 Exemplo 2: criando tipo abstrato de dados conta PROBLEMA Fazer a abertura de duas contas. Creditar e debitar valores nas contas. Realizar a transferência de valores entre as contas e ao final exibir os dados de ambas as contas.

16 Exemplo 2: criando tipo abstrato de dados conta SOLUÇÃO

17 Exercícios Utilize o TDA vetor e faça um programa para ler dois conjuntos de pontuações relativas aos resultados obtidos por dois participantes do Rally Paris-Dakar. Calcular a média de cada um e indicar qual deles teve a melhor média. Imprimir as pontuações lidas, as médias e quem obteve a melhor média.

18 Exercícios Crie um TDA para a representação de um ponto no plano cartesiano. O ponto será representado pelo par ordenado (x, y). Defina as seguintes operações: cria: operação que cria um ponto nas coordenadas x e y; acessa: operação que devolve as coordenadas de um ponto; atribui: operação que atribui novos valores às coordenadas de um ponto; distancia: operação que calcula a distância entre dois pontos.

Tipos Abstratos de Dados TADs

Tipos Abstratos de Dados TADs Tipos Abstratos de Dados TADs Exemplo Folha de freqüência Disciplina: Estruturas de Dados I Semestre: 2013-2 Turmas: U Professor: Sandra matricula nome......... XXXX ZZZZ YYYY Ana Maria Pedro Operações:

Leia mais

Motivação. Estrutura de Dados. Motivação. Motivação. Por que estudar os tipos de dados? Duas são as principais preocupações em um projeto de software

Motivação. Estrutura de Dados. Motivação. Motivação. Por que estudar os tipos de dados? Duas são as principais preocupações em um projeto de software Estrutura de Dados Aula 01 -Tipos Abstratos de de Dados Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com Motivação Por que estudar os tipos de dados? Duas são as principais preocupações em um projeto

Leia mais

TAD: Tipo Abstrato de Dados (parte 1)

TAD: Tipo Abstrato de Dados (parte 1) TAD: Tipo Abstrato de Dados (parte 1) SCC0202 Algoritmos e Estruturas de Dados I Prof. Thiago A. S. Pardo TADs e termos relacionados Termos relacionados, mas diferentes Tipo de dados Tipo abstrato de dados

Leia mais

Estruturas de Dados. Profº Carlos Alberto Teixeira Batista

Estruturas de Dados. Profº Carlos Alberto Teixeira Batista Estruturas de Dados Profº Carlos Alberto Teixeira Batista E-mail: carlos.batista@facape.br carlos36_batista@yahoo.com.br Lista Linear São estruturas formadas por um conjunto de dados de forma a preservar

Leia mais

INE5384 Estruturas de Dados. Sumário

INE5384 Estruturas de Dados. Sumário UFSC-CTC-INE Curso de Ciência da Computação INE5384 Estruturas de Dados Turma 322B Prof. Ronaldo S. Mello 2002/2 Introdução Listas Sumário Árvores Métodos de Pesquisa de Dados Métodos de Ordenação de Dados

Leia mais

Exemplo Tipos Abstratos de Dados TADs Disciplina: Semestre: Turma: Professor: Renata de Matos Galante matricula nome

Exemplo Tipos Abstratos de Dados TADs Disciplina: Semestre: Turma: Professor: Renata de Matos Galante matricula nome Tipos Abstratos de Dados TADs Renata de Matos Galante Universidade Federal do Rio Grande do Sul Instituto de Informática INF 01203 Estruturas de Dados galante@inf.ufrgs.br Eemplo Folha de freqüência Disciplina:

Leia mais

Algoritmos de Busca. Profº Carlos Alberto T. Batista

Algoritmos de Busca. Profº Carlos Alberto T. Batista Algoritmos de Busca Profº Carlos Alberto T. Batista E-mail: carlos.batista@facape.br carlos36_batista@yahoo.com.br Por que estudar busca de dados? Sistemas trabalham, frequentemente, com a busca de números,

Leia mais

Paradigmas de Linguagens de Programação. Tipos de Dados Abstratos

Paradigmas de Linguagens de Programação. Tipos de Dados Abstratos Tipos de Dados Abstratos Cristiano Lehrer Conceito de Abstração O conceito de abstração é fundamental em programação. Quase todas as linguagens suportam abstração de processos, através de subprogramas:

Leia mais

TAD: Tipo Abstrato de Dados (parte 1)

TAD: Tipo Abstrato de Dados (parte 1) TAD: Tipo Abstrato de Dados (parte 1) SCC0502 Algoritmos e Estruturas de Dados I Prof. Thiago A. S. Pardo TADs e termos relacionados Termos relacionados, mas diferentes Tipo de dados Tipo abstrato de dados

Leia mais

SCC-202 Algoritmos e Estruturas de Dados I. Profa. Graça Nunes 2º. Semestre 2010

SCC-202 Algoritmos e Estruturas de Dados I. Profa. Graça Nunes 2º. Semestre 2010 SCC-202 Algoritmos e Estruturas de Dados I Profa. Graça Nunes 2º. Semestre 2010 Objetivos Introduzir conceitos de Estruturas de Dados básicas e seus algoritmos, que são frequentemente usados na construção

Leia mais

Tipos Abstratos de Dados

Tipos Abstratos de Dados Tipos Abstratos de Dados Prof. Rui Jorge Tramontin Jr. UDESC - Rui J. Tramontin Jr. 1 Índice Introdução Definição de Tipos Abstratos de Dados Exemplos de TADs Implementação de TADs Implementação em C Exemplo

Leia mais

Estruturas de Dados. Prof.: Carlos Alberto Página da Disciplina:

Estruturas de Dados. Prof.: Carlos Alberto Página da Disciplina: Estruturas de Dados Prof.: Carlos Alberto Página da Disciplina: http://alged.webnode.com/ E-mail: carlos36_batista@yahoo.com.br Estruturas de dados Programa da disciplina Estruturas de dados - referências

Leia mais

Prova 2 - Computação

Prova 2 - Computação Prova 2 - Computação A prova consiste na elaboração de um programa utilizando a linguagem C. Seu programa deve estar correto (sintática e semanticamente), além de organizado (nomes de variáveis, identação

Leia mais

Sistemas da Informação. Banco de Dados I. Edson Thizon

Sistemas da Informação. Banco de Dados I. Edson Thizon Sistemas da Informação Banco de Dados I Edson Thizon (edson@esucri.com.br) 2008 Apresentação (mini-currículo) Formação Acadêmica Mestrando em Ciência da Computação (UFSC/ ) Créditos Concluídos. Bacharel

Leia mais

O que é a modularização

O que é a modularização capa O que é a modularização Código Modularizado Código Não Modularizado Modularização Porque modularizar um código? -Decompor uma tarefa complexa em tarefas menores e de fácil solução. -Fazer uso da técnica

Leia mais

Exercícios: Vetores e Matrizes

Exercícios: Vetores e Matrizes Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Vetores e Matrizes 1 Vetores 1. Faça um programa que possua um vetor

Leia mais

Encapsulamento e Modularização

Encapsulamento e Modularização Encapsulamento e Modularização Linguagens de Programação Departamento de Computação Universidade Federal de Sergipe Encapsulamento Modularização Tipos Abstratos de Dados (TADs) Objetos Classes Conteúdo

Leia mais

Encapsulamento e Modularização

Encapsulamento e Modularização Encapsulamento e Modularização Departamento de Computação Universidade Federal de Sergipe Encapsulamento Modularização Tipos Abstratos de Dados (TADs) Objetos Classes Conteúdo Encapsulamento Programação

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Programação Orientada a Objetos 1.1 - Perspectiva histórica: Conceitos A evolução das linguagens de programação tem-se feito na procura de ferramentas: -cada vez mais próximas da percepção humana - e que

Leia mais

Estrutura de Dados (DPADF 0056)

Estrutura de Dados (DPADF 0056) Estrutura de Dados (DPADF 0056) Aula 2 TADs Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet Prof. Bruno B. Boniati www.cafw.ufsm.br/~bruno

Leia mais

Aula 1 Conceitos Básicos

Aula 1 Conceitos Básicos Aula 1 Conceitos Básicos Elerson R. S. Santos elerson@dcc.ufmg.br Livro Projeto de Algoritmos Capítulo 1 @ DCC/UFMG O que é um algoritmo? O que é um programa? O que é um TAD? Algoritmos e Estrutura de

Leia mais

Slide 01 16/03/2017. Estruturas de Dados. Prof. Cleziel Franzoni da /Cleziel.

Slide 01 16/03/2017. Estruturas de Dados. Prof. Cleziel Franzoni da /Cleziel. Slide 01 16/03/2017 Estruturas de Dados Prof. Cleziel Franzoni da Costa 1 @Cleziel /Cleziel cleziel@hotmail.com 42 3 EMENTA Listas lineares e suas variações. Filas e pilhas. Árvores binárias e suas variações.

Leia mais

Programação de Computadores II. Cap. 9 Tipos Abstratos de Dados (TAD)

Programação de Computadores II. Cap. 9 Tipos Abstratos de Dados (TAD) Programação de Computadores II Cap. 9 Tipos Abstratos de Dados (TAD) Livro: Waldemar Celes, Renato Cerqueira, José Lucas Rangel. Introdução a Estruturas de Dados, Editora Campus (2004) Slides adaptados

Leia mais

4ª Lista de Exercícios de Programação I

4ª Lista de Exercícios de Programação I 4ª Lista de Exercícios de Programação I Instrução As questões devem ser implementadas em C. 1. Faça um algoritmo que leia 10 valores inteiros armazenando-os em um vetor e depois calcule a soma dos valores

Leia mais

ara entender os Sistemas Gerenciadores de Banco de Dados é importante conhecer

ara entender os Sistemas Gerenciadores de Banco de Dados é importante conhecer Parte 2 ara entender os Sistemas Gerenciadores de Banco de Dados é importante conhecer P alguns conceitos básicos. A primeira definição é relativa aos conceitos de dados e informação. Dados são fatos em

Leia mais

Lógica de Programação e Algoritmos. Prof. André Y. Kusumoto

Lógica de Programação e Algoritmos. Prof. André Y. Kusumoto Lógica de Programação e Algoritmos Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Procedimentos e Funções Para construirmos grandes programas, necessitamos fazer uso da técnica de modularização.

Leia mais

4ª Lista de Exercícios de Programação I

4ª Lista de Exercícios de Programação I 4ª Lista de Exercícios de Programação I Instrução As questões devem ser implementadas em C. 1. Faça um algoritmo que leia 10 valores inteiros armazenando-os em um vetor e depois calcule a soma dos valores

Leia mais

Televisao tamanho tela emitirsom. conectarperifericos

Televisao tamanho tela emitirsom. conectarperifericos 1 - Introdução a Programação Orientada a Objeto Para tentar solucionar o problema do baixo reaproveitamento de código, surgiu a idéia da Programação Orientada a Objeto (POO). A POO não é nova, sua formulação

Leia mais

Universidade Federal de Ouro Preto UFOP. Instituto de Ciências Exatas e Biológicas ICEB. Departamento de Computação DECOM

Universidade Federal de Ouro Preto UFOP. Instituto de Ciências Exatas e Biológicas ICEB. Departamento de Computação DECOM Exercício 1 PROGRAMAÇÃO DE COMPUTADORES I BCC701 2014-2 Aula Prática 09 - Segunda Valor de uma Série O valor aproximado de uma série com n termos é calculado pelo somatório: S = onde i é o número da parcela

Leia mais

INTRODUÇÃO AOS SISTEMAS LÓGICOS

INTRODUÇÃO AOS SISTEMAS LÓGICOS 1 INTRODUÇÃO AOS SISTEMAS LÓGICOS ÁREAS DE COMPUTAÇÃO PROF. ANDRÉ MONTEVECCHI PROFA. ANNA TOSTES 28/08/2011 Prof. André Montevecchi / Profa. Anna Tostes 2 SUMÁRIO Os Pilares da Computação Algoritmos Teoria

Leia mais

Professor Jefferson Chaves Jefferson de Oliveira Chaves - IFC Araquari

Professor Jefferson Chaves Jefferson de Oliveira Chaves - IFC Araquari Professor Jefferson Chaves Jefferson.chaves@ifc-araquari.edu.br Tipos de dados; Operadores; Arrays; Por vezes, será importante saber o tipo de dados; Quando dissemos ao usuário, digite sua idade, por

Leia mais

Programação I A Linguagem C. Prof. Carlos Alberto

Programação I A Linguagem C. Prof. Carlos Alberto Programação I A Linguagem C Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br 2 Origem A linguagem C foi desenvolvida em 1972, nos Laboratórios Bell, por Dennis Ritchie. Implementada

Leia mais

PROGRAMAÇÃO DE COMPUTADORES I BCC Aula Prática 15

PROGRAMAÇÃO DE COMPUTADORES I BCC Aula Prática 15 Exercício 1 PROGRAMAÇÃO DE COMPUTADORES I BCC701 2017-1 Aula Prática 15 No jogo Inventei, cada posição do tabuleiro é representada por suas coordenadas x e y e contém um número. O tabuleiro pode ser representado

Leia mais

BCC202 - Estrutura de Dados I

BCC202 - Estrutura de Dados I BCC202 - Estrutura de Dados I Aula 03: Tipos Abstratos de Dados (TADs) Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Ciência da Computação, DECOM Website: www.decom.ufop.br/reifortes

Leia mais

Programação C# + ASP.NET

Programação C# + ASP.NET Programação C# + ASP.NET Prof. MSc. Daniel Menin Tortelli e-mail: danielmenintortelli@gmail.com Site: http://sites.google.com/site/danielmenintortelli/home 19/08/2014 Programação C# ASP.NET - Prof. MSc.

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Conceito de Algoritmo Pseudocódigo

Leia mais

Dicas para implementação do Trabalho 6

Dicas para implementação do Trabalho 6 Dicas para implementação do Trabalho 6 1 Passo a passo para implementação do trabalho 1 Faça um exemplo que contemple todos os possíveis comandos que sua linguagem aceita. Um possível exemplo, faltando

Leia mais

Variáveis e Memória. Revisão. Conceitos. Operações sobre a memória

Variáveis e Memória. Revisão. Conceitos. Operações sobre a memória Variáveis e Memória Revisão Estudamos, na Introdução, que os programas de computador implementam algoritmos, os quais manipulam um conjunto de dados para produzir um resultado. O algoritmo é um conjunto

Leia mais

MC-102 Aula 21 Registros

MC-102 Aula 21 Registros MC-102 Aula 21 Registros Instituto de Computação Unicamp 27 de Outubro de 2016 Roteiro 1 Registros Declarando um novo tipo de Registro Acessando os campos de um Registro Lendo e Escrevendo Registros Atribuição

Leia mais

Aula 12 Tipo Abstrato de Dados. Prof. Me. Sérgio Carlos Portari Jr UEMG Campus de Frutal

Aula 12 Tipo Abstrato de Dados. Prof. Me. Sérgio Carlos Portari Jr UEMG Campus de Frutal Aula 12 Tipo Abstrato de Dados Prof. Me. Sérgio Carlos Portari Jr UEMG Campus de Frutal Representação dos Dados Os dados podem estar representados (estruturados) de diferentes maneiras Normalmente, a escolha

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 9 Subalgoritmos, funções e passagem de parâmetros Profa. Marina Gomes marinagomes@unipampa.edu.br 22/06/2017 Engenharia de Computação - Unipampa 1 Modularização Facilita a

Leia mais

Variação de implementação. Variação de implementação (2) Variação de implementação (3)

Variação de implementação. Variação de implementação (2) Variação de implementação (3) Estruturas de Dados Aula 8: Tipos Abstratos de Dados Variação de implementação Há diferentes implementações possíveis para o mesmo tipo de dado Todas definem o mesmo domínio e não mudam o significado das

Leia mais

Parte SISTEMAS DE GERÊNCIA DE BANCO DE DADOS 2.1 CARACTERÍSTICAS DE UM BANCO DE DADOS

Parte SISTEMAS DE GERÊNCIA DE BANCO DE DADOS 2.1 CARACTERÍSTICAS DE UM BANCO DE DADOS Parte 2 ara entender os Sistemas Gerenciadores de Banco de Dados é importante conhecer Palguns conceitos básicos. A primeira definição é relativa aos conceitos de dados e informação. Dados são fatos em

Leia mais

GEQ Prof. Paulo R. Coelho. Lista para prova

GEQ Prof. Paulo R. Coelho. Lista para prova GEQ007 2013 Prof. Paulo R. Coelho Lista para prova 7. Defina uma estrutura empregado para armazenar nome, data de nascimento, idade e salário de um empregado de uma empresa. Leia informações sobre 10 empregados

Leia mais

Variáveis Indexadas Unidimensionais (Vetores)

Variáveis Indexadas Unidimensionais (Vetores) () Ivanovitch Medeiros Dantas da Silva Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação DCA0800 - Algoritmos e Lógica de Programação Natal, 25 de outubro

Leia mais

Estruturas de Dados Aula 8: Tipos Abstratos de Dados 30/03/2011

Estruturas de Dados Aula 8: Tipos Abstratos de Dados 30/03/2011 Estruturas de Dados Aula 8: Tipos Abstratos de Dados 30/03/2011 Variação de implementação Há diferentes implementações possíveis para o mesmo tipo de dado Todas definem o mesmo domínio e não mudam o significado

Leia mais

O PARADIGMA ORIENTADO POR OBJETOS

O PARADIGMA ORIENTADO POR OBJETOS O PARADIGMA ORIENTADO POR OBJETOS A idéia básica do paradigma orientado a objetos é imaginar que programas simulam o mundo real: um mundo povoado de objetos. Dessa maneira, linguagens baseadas nos conceitos

Leia mais

Estrutura de Dados. Plano de Ensino. Vilson Heck Junior. Campus Lages. Instituto Federal de Santa Catarina

Estrutura de Dados. Plano de Ensino. Vilson Heck Junior. Campus Lages. Instituto Federal de Santa Catarina Estrutura de Dados Plano de Ensino Vilson Heck Junior Instituto Federal de Santa Catarina Campus Lages Sumário 1 Sumário 2 Plano de Ensino Competências, Habilidades e Atitudes Bases Tecnológicas Instrumentos

Leia mais

Exercícios: Recursão

Exercícios: Recursão Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Recursão 1. Faça uma função recursiva que calcule e retorne o fatorial

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Estrutura de dados: listas Manipulando listas Vetores como listas

Leia mais

LISTA DE EXERCÍCIOS - ro. 04

LISTA DE EXERCÍCIOS - ro. 04 USP ICMC SSC SSC0100 - Introdução à Ciência da Computação I (Prática) Professor responsável: Fernando Santos Osório Semestre: 2009/1 Horário: Terça 14h20 (Turma A2) E-mail: fosorio.at. icmc.usp.br fosorio.at.

Leia mais

Algoritmos e Estruturas de Dados II IEC013

Algoritmos e Estruturas de Dados II IEC013 Algoritmos e Estruturas de Dados II IEC013 TAD, Pilhas e Filas Prof. César Melo Todos os créditos ao Prof. Leandro Galvão TAD: Definição SE programa = definição de um tipo de dados + operação sobre dados

Leia mais

Aula 11: Modularização

Aula 11: Modularização Aula 11: Modularização Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Modularização Programação de Computadores IV 1 / 37 Agenda 1 Revisão e Contexto

Leia mais

Suponha um conjunto habitacional, com várias famílias... imagina se todas elas morassem em uma única casa?

Suponha um conjunto habitacional, com várias famílias... imagina se todas elas morassem em uma única casa? Funções Suponha um conjunto habitacional, com várias famílias...... imagina se todas elas morassem em uma única casa? Funções Introdução à Computação 1 de 28 Funções Na Programação, funções são conjuntos

Leia mais

Visibilidade e Encapsulamento

Visibilidade e Encapsulamento Visibilidade e Encapsulamento Professor: Ricardo Luis dos Santos IFSUL 2016 Agenda Pacotes Visibilidade Encapsulamento Hands-On 2 Pacotes Em Java, a visibilidade ou grau de acesso a um determinado atributo

Leia mais

Dados Gerais. Conteúdo. Tipos de Dados. Profa. Renata de Matos Galante

Dados Gerais. Conteúdo. Tipos de Dados. Profa. Renata de Matos Galante Dados Gerais INF 01203 Estruturas de Dados Profa. Renata de Matos Galante Prédio: 72 (43.424) Sala: 221 Ramal: 3308 7746 Página: www.inf.ufrgs.br/~galante Email: galante@inf.ufrgs.br Conteúdo Tipos de

Leia mais

TAD: Tipo Abstrato de Dados (parte 2)

TAD: Tipo Abstrato de Dados (parte 2) TAD: Tipo Abstrato de Dados (parte 2) SCC0502 Algoritmos e Estruturas de Dados I Programa em C pode ser dividido em vários arquivos Arquivos fonte com extensão.c Denominados de módulos Cada módulo deve

Leia mais

Requisitos de Software

Requisitos de Software Engenharia de requisitos Requisitos de Software Estabelece os serviços que o cliente requer de um sistema e as restrições sob as quais tal sistema operará e será desenvolvido. Tais serviços e restrições

Leia mais

Faculdades Integradas Rui Barbosa Programação II Prof. Marcos Antonio Estremote. Exercícios com Vetores e Matrizes

Faculdades Integradas Rui Barbosa Programação II Prof. Marcos Antonio Estremote. Exercícios com Vetores e Matrizes Faculdades Integradas Rui Barbosa Programação II Prof. Marcos Antonio Estremote Exercícios com Vetores e Matrizes 1. Leia um vetor de 12 posições e em seguida ler também dois valores X e Y quaisquer correspondentes

Leia mais

Programação I Ponteiros e alocação dinâmica de memória. Prof. Carlos Alberto

Programação I Ponteiros e alocação dinâmica de memória. Prof. Carlos Alberto Programação I Ponteiros e alocação dinâmica de memória Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Ponteiros O ponteiro é um tipo de dado como int, char ou float; Variáveis

Leia mais

Introdução a Programação. Tipos Abstratos de Dados Implementando Pilha e Fila

Introdução a Programação. Tipos Abstratos de Dados Implementando Pilha e Fila Introdução a Programação Tipos Abstratos de Dados Implementando Pilha e Fila Abstração Abstração é o processo ou resultado de generalização por redução do conteúdo da informação de um conceito ou fenômeno

Leia mais

Desenvolvimento de Aplicações Desktop

Desenvolvimento de Aplicações Desktop Desenvolvimento de Aplicações Desktop Conceitos Básicos de POO Professor: Charles Leite Motivação Na Programação OO, um OBJETO é considerado a entidade central de um programa Assim, o desenvolvimento de

Leia mais

Introdução à Programação Orientada a Objetos. Prof. Leonardo Barreto Campos 1

Introdução à Programação Orientada a Objetos. Prof. Leonardo Barreto Campos 1 Introdução à Programação Orientada a Objetos Prof. Leonardo Barreto Campos 1 Sumário O que é um programa? Modelo; Programação Orientada a Objetos; Exemplo; Encapsulamento; Bibliografia. Prof. Leonardo

Leia mais

Questão 1 Exemplo de execução 1 (com N=6): Exemplo de execução 2 (com N=4):

Questão 1 Exemplo de execução 1 (com N=6): Exemplo de execução 2 (com N=4): CI240 Fundamentos de Programação Nome: Instruções para a prova A prova é sem consulta; A prova dura 1 hora e 40 minutos; Esta folha de enunciados deverá ser entregue ao professor junto com a folha de respostas;

Leia mais

Introdução à Programação de Computadores Fabricação Mecânica

Introdução à Programação de Computadores Fabricação Mecânica Introdução à Programação de Computadores Fabricação Mecânica Edilson Hipolito da Silva edilson.hipolito@ifsc.edu.br - http://www.hipolito.info Aula 06 - Introdução a algoritmos Roteiro Algoritmos Formas

Leia mais

BANCO DE DADOS - MODELAGEM DE DADOS

BANCO DE DADOS - MODELAGEM DE DADOS Colégio Estadual João Manoel Mondrone Ensino Fundamental, Médio, Profissional e Normal Técnico em Informática BANCO DE DADOS - MODELAGEM DE DADOS Profª Ana Paula Mandelli O QUE É MODELAGEM DE DADOS? Significa

Leia mais

Aula 20: Matrizes (Parte 2)

Aula 20: Matrizes (Parte 2) Aula 20: Matrizes (Parte 2) Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2018/2 Departamento de Computação UFOP Aulas anteriores Vetores Matrizes 2 / 15 Túlio Toffolo

Leia mais

Introdução aos sistemas de informação

Introdução aos sistemas de informação Introdução aos sistemas de informação Sistemas de Informação Sistemas de Informação Um conjunto de informações relacionadas que coletam, manipulam e disseminam dados e informações e fornecem realimentação

Leia mais

Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 em PDF via Moodle: Escolha apenas 5 exercícios para entrega Exercício 01 (Pilhas)

Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 em PDF via Moodle: Escolha apenas 5 exercícios para entrega Exercício 01 (Pilhas) Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 Lista Obrigatória 02 - Prof. Rafael Oliveira (Deve ser entregue em PDF via Moodle: Escolha apenas 5 exercícios para entrega) Exercício 01

Leia mais

INF1007: Programação 2 9 Tipos Abstratos de Dados. (c) Dept. Informática - PUC-Rio 1

INF1007: Programação 2 9 Tipos Abstratos de Dados. (c) Dept. Informática - PUC-Rio 1 INF1007: Programação 2 9 Tipos Abstratos de Dados (c) Dept. Informática - PUC-Rio 1 Tópicos Módulos e compilação em separado Tipo abstrato de dados Exemplo 1: TAD Ponto Exemplo 2: TAD Círculo Exemplo 3:

Leia mais

Estruturas de Dados Apresentação

Estruturas de Dados Apresentação Estruturas de Dados Apresentação Prof. Eduardo Alchieri Objetivos Apresentar técnicas fundamentais na análise e projeto de estruturas de dados em programas computacionais Vamos aprender: Quais são as principais

Leia mais

6 a Lista Complementar de Exercícios de CI208 Programação de Computadores 13/02/2014

6 a Lista Complementar de Exercícios de CI208 Programação de Computadores 13/02/2014 6 a Lista Complementar de Exercícios de CI208 Programação de Computadores 13/02/2014 Parte A - Exercícios de Fixação de Aprendizagem 1. Faça um programa em C++ que leia do teclado uma sequência de 10 números

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software Requisitos de Software Professor: Charles Leite Engenharia de requisitos Os requisitos de um sistema são as descrições do que o sistema deve fazer, os serviços que oferece e as restrições

Leia mais

CCO 016 Fundamentos de Programação

CCO 016 Fundamentos de Programação CCO 016 Fundamentos de Programação Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá AULA 09 Agregados Homogêneos Variáveis Indexadas Vetores EXEMPLO 1 Um programa deve calcular quem

Leia mais

Aula 6: Entrada e Saída

Aula 6: Entrada e Saída Aula 6: Entrada e Saída Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Entrada e Saída Programação de Computadores IV 1 / 29 Agenda 1 Revisão e Contexto

Leia mais

Orientação a Objetos e UML

Orientação a Objetos e UML Orientação a Objetos e UML Aula #4.1. EBS 211 POO e UML Prof. Luiz Fernando S. Coletta luizfsc@tupa.unesp.br Campus de Tupã Roteiro Programação Orientada a Objetos (POO); Comparação com Linguagem Estruturada;

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: tipos de dados definidos pelo programador: struct union enum typedef

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: tipos de dados definidos pelo programador: struct union enum typedef Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: tipos de dados definidos pelo programador: struct union enum typedef Prof. Renato Pimentel 1 Introdução Tipos de variáveis vistos

Leia mais

Agenda. Conjunto de variáveis. O tipo de dados Vetor INTRODUÇÃO. Vetores.

Agenda. Conjunto de variáveis. O tipo de dados Vetor INTRODUÇÃO. Vetores. Programação de Computadores I Universidade Federal de Ouro Preto Departamento de Ciência da Computação www.decom.ufop.br/bcc701 Vetores. Material Didático Unificado. Agenda Introdução; ; ; ; Exercícios.

Leia mais

TAD: Tipo Abstrato de Dados (parte 2)

TAD: Tipo Abstrato de Dados (parte 2) TAD: Tipo Abstrato de Dados (parte 2) SCC0202 Algoritmos e Estruturas de Dados I Prof. Thiago A. S. Pardo Modularização em C Programa em C pode ser dividido em vários arquivos Arquivos fonte com extensão.c

Leia mais

Exercícios: Arquivos

Exercícios: Arquivos Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Arquivos 1. Codifique, compile e execute um programa que: (a) crie/abra

Leia mais

Departamento de Sistemas de Computação Universidade de São Paulo Introdução a Ciência de Computação I. Aula 12 Estruturas

Departamento de Sistemas de Computação Universidade de São Paulo Introdução a Ciência de Computação I. Aula 12 Estruturas Departamento de Sistemas de Computação Universidade de São Paulo Introdução a Ciência de Computação I Aula 12 Estruturas Responsável Seiji Isotani, Rafaela V. Rocha sisotani@icmc.usp.br rafaela.vilela@gmail.com

Leia mais

5ª Lista de Exercícios de Programação I

5ª Lista de Exercícios de Programação I 5ª Lista de Exercícios de Programação I Instrução As questões devem ser implementadas em C. Questões que envolvam leitura de matrizes, a construção dessas matrizes pode ser realizada através da geração

Leia mais

Tipos Abstratos de Dados

Tipos Abstratos de Dados Tipos Abstratos de Dados Prof. Jussara Almeida Derivado das transparências do Algoritmos e Estrutura de Dados Algoritmo: Sequência de ações executáveis para a solução de um determinado tipo de problema

Leia mais

A palavra ALGORITMO teve origem com um Matemático Persa, al. Khawarizmi. O seu trabalho mais famoso foi Al-jabr walmuquabalah,

A palavra ALGORITMO teve origem com um Matemático Persa, al. Khawarizmi. O seu trabalho mais famoso foi Al-jabr walmuquabalah, A palavra ALGORITMO teve origem com um Matemático Persa, al Khawarizmi. O seu trabalho mais famoso foi Al-jabr walmuquabalah, ou a ciência das Equações que, em última análise suscitaram o desenvolvimento

Leia mais

Universidade Estadual de Feira de Santana Departamento de Ciências Exatas. Clone do MatLab. João Carlos Nunes Bittencourt. Feira de Santana, 2008

Universidade Estadual de Feira de Santana Departamento de Ciências Exatas. Clone do MatLab. João Carlos Nunes Bittencourt. Feira de Santana, 2008 1 Universidade Estadual de Feira de Santana Departamento de Ciências Exatas Clone do MatLab João Carlos Nunes Bittencourt Feira de Santana, 2008 2 SUMÁRIO 1 Introdução... 6 2 Desenvolvimento... 7 2.1 Rotina

Leia mais

Working 05 : Modularização

Working 05 : Modularização Universidade Federal do Espírito Santo Centro Tecnólogico Working 05 : Modularização Objetivos: Entender como é estruturada uma função em C e lembrar como é feita a comunicação entre funções; Praticar

Leia mais

Ponto 1) Representação do Ponto

Ponto 1) Representação do Ponto Ponto 1) Representação do Ponto Universidade Federal de Pelotas Cálculo com Geometria Analítica I Prof a : Msc. Merhy Heli Rodrigues Plano Cartesiano, sistemas de coordenadas: pontos e retas Na geometria

Leia mais

Modelagem de Dados MODELAGEM DE DADOS. Sistemas de Banco de Dados. Profa. Rosemary Melo

Modelagem de Dados MODELAGEM DE DADOS. Sistemas de Banco de Dados. Profa. Rosemary Melo MODELAGEM DE DADOS Sistemas de Banco de Dados Profa. Rosemary Melo SISTEMAS DE BANCO DE DADOS OBJETIVOS Apresentar os conceitos fundamentais de Sistemas de Banco de Dados. Principais componentes dos SGBDs

Leia mais

Vetores. Material Didático Unificado. BCC701 Programação de Computadores I Universidade Federal de Ouro Preto Departamento de Ciência da Computação

Vetores. Material Didático Unificado. BCC701 Programação de Computadores I Universidade Federal de Ouro Preto Departamento de Ciência da Computação Programação de Computadores I Universidade Federal de Ouro Preto Departamento de Ciência da Computação www.decom.ufop.br/bcc701 Vetores. Material Didático Unificado. 1 Agenda Introdução; Declaração de

Leia mais

Programação: Vetores

Programação: Vetores Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia

Leia mais

SCC 202 Prova 1. 28/9/2010 Resolução e Comentários

SCC 202 Prova 1. 28/9/2010 Resolução e Comentários SCC 202 Prova 1 28/9/2010 Resolução e Comentários Questão 1) (3.5) Sobre TADs. a) O que é e quais são as vantagens de se utilizar Tipos Abstratos de Dados (TADs) no projeto de desenvolvimento de software?

Leia mais

Programação Procedimental GBC /1 Prof. Renan Cattelan Prática 10. Estruturas e alocação dinâmica

Programação Procedimental GBC /1 Prof. Renan Cattelan  Prática 10. Estruturas e alocação dinâmica Programação Procedimental GBC014 2015/1 Prof. Renan Cattelan www.facom.ufu.br/~renan Prática 10 Estruturas e alocação dinâmica Exercício Crie um programa para armazenar uma agenda de contatos pessoais

Leia mais

Introdução a Programação de Jogos

Introdução a Programação de Jogos Introdução a Programação de Jogos Aula 02 Algoritmos e Ciclo de Desenvolvimento Edirlei Soares de Lima Modelo de um Computador Linguagem de Máquina Um processador executa instruções

Leia mais

INF1007 Programação II

INF1007 Programação II INF1007 Programação II Departamento de Informática PUC-Rio Turma, Horário e Professor INF1007 Turma I Bruno Feijó bfeijo@inf.puc-rio.br Salas e Horário 2ª. (L546 - Lab) e 4ª. (L150) 15-17h Esquema das

Leia mais

Tipos Abstratos de Dados

Tipos Abstratos de Dados Tipos Abstratos de Dados Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aula 03 Algoritmos e Estruturas de Dados I Qual a diferença entre um algoritmo e um programa? Algoritmos e Estruturas de Dados

Leia mais

Semana 10: Vetores. Material Didático Unificado.

Semana 10: Vetores. Material Didático Unificado. Programação de Computadores I Universidade Federal de Ouro Preto Departamento de Ciência da Computação www.decom.ufop.br/bcc701 2015/1 Semana 10: Vetores. Material Didático Unificado. 1 2015/1 Agenda Introdução;

Leia mais

Modularidade - Funções e Procedimentos

Modularidade - Funções e Procedimentos Modularidade - Funções e Procedimentos José Gustavo de Souza Paiva Problema Em diversas situações, é preciso executar uma tarefa específica diversas vezes em um programa, variando apenas os dados de entrada

Leia mais

Programação I Funções. Prof. Carlos Alberto

Programação I Funções. Prof. Carlos Alberto Programação I Funções Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Funções Funções são blocos de códigos que podem ser nomeados e chamados de dentro de um programa; Funções

Leia mais

MCG126 Programação de Computadores II

MCG126 Programação de Computadores II MCG126 Programação de Computadores II Turmas: A e B Professor: Isac Mendes Lacerda (Material original cedido gentilmente pela professora Janaína Gomide) 1 Bibliografia 2 Bibliografia Introdução à Programação

Leia mais