Programação II Aula 07

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Programação II Aula 07"

Transcrição

1 Engenharias de Produção e Petróleo Programação II Aula 07 Adan Lucio P. Rodovia BR 101 Norte, Km. 60, Bairro Litorâneo, CEP , São Mateus ES, Tel.: +55 (27) CEUNES

2 Métodos de Ordenação MÉTODO POR EXTRACÇÃO Este método consiste em percorrer o vector, da primeira à última posição, à procura do menor elemento e colocá-lo na primeira posição; em seguida começa na segunda posição e percorre o resto do vector à procura do próximo menor elemento e colocao na segunda posição, e assim sucessivamente até à última posição.

3 MÉTODO POR EXTRACÇÃO

4 MÉTODO DE ORDENAÇÃO POR INSERÇÃO Este método percorre todos os elementos do vector e, sempre que encontrar um elemento menor do que algum dos anteriores, coloca-o na posição correta.

5 MÉTODO DE ORDENAÇÃO POR INSERÇÃO

6 MÉTODO DE ORDENAÇÃO DA BOLHA Este método faz a comparação, da esquerda para a direita do vector, de cada elemento com o seu elemento anterior até que não seja necessário trocar mais vezes, ficando assim ordenado.também se pode percorrer o vector da direita para a esquerda..

7 MÉTODO DE ORDENAÇÃO DA BOLHA

8

9

10

11 MergeSort entrada saída Dividir Combinar

12 Complexidade Métodos Empíricos - O tempo de execução é obtido através da execução propriamente dita do algoritmo, considerando-se entradas diversas. (Depende fortemente de tecnologia.) Métodos Analíticos O tempo de execução é expresso através de expressões matemáticas que traduzem o comportamento do algoritmo em termos do tamanho da entrada. Entre entradas de mesmo tamanho que usam tempos de execução diferentes, considera-se sempre o pior caso.

13 Complexidade

14 Exemplo de Análise de Complexidade Algoritmo Somatório(A: array de inteiros, tam=n) Início soma = 0; i = n; Tempo constante repetir os comandos soma = soma + A[i]; i = i - 1; até que i = 0; output (soma) Fim Tempo constante Trecho realizado algumas vezes. Quantas? n Tempo execução = Cte. + (t som +t atr +t sub +t comp ) * n Cte.2

15 Algoritmo Inversão de seqüência Entrada: Elementos armazenados no vetor S[i], i=1..n. Saída: Sequência invertida dos elementos de S[i]. Início Para i = 1.. n/2 faça temp = S[i] i S[i] = S[n i+1] n i+1 n n-1 n-2 n-3 S[n i+1] = temp Fim Outro Exemplo de Análise Laço é executado n/2 vezes. A cada iteração é feita uma troca. Ao final a seqüência está invertida. Tempo de execução: (t operações ) * n/2.

16 Observando os Tempos de Execução Gostaríamos de substituir as funções encontradas por uma função mais simples, que tenha o mesmo crescimento assintótico. C1 + C2 * n n C3 * n / 2 n Se a função tem termos de ordem diferente, gostaríamos de capturar o termo de mais alta ordem: 6 n 3 + 4n + 9 n 3

17 Notação Em complexidade computacional usamos uma notação que em funções do tipo C1 + C2 * n ou C3 * n/2 ignora as constantes - Aditivas (como C1) - Multiplicativas (como C2, C3 e 1/2) Ex: Se número de passos = 3n dizemos que o tempo de execução é O(n).

18 Notação Em complexidade computacional usamos uma notação que em funções do tipo C1 + C2 * n ou C3 * n/2 ignora as constantes - Aditivas (como C1) - Multiplicativas (como C2, C3 e 1/2) Ex: Se número de passos = 3n dizemos que o tempo de execução é O(n).

19 Notação Esta notação também despreza termos de ordem menor. Ex: Se número de passos = n 2 + n dizemos que o tempo de execução é O(n 2 ). O objetivo é ressaltar o termo que domina a curva da função.

20 A Notação Simétrica Ω Definição (notação ): Sejam f e h funções positivas de variável inteira n. Diz-se que f é (h), escrevendo-se f = (h), quando existirem - Uma constante c > 0 e - Um valor inteiro n 0, tais que: n > n 0 f(n) c. h(n) Uso da notação Ω: Limite inferior para o tempo de execução. O problema X requer pelo menos tempo h.

21 A Notação Ω Ex: f = n 2 1 f = (n 2 ) f = (n) f = (1) Mas não vale: f = (n 3 )

22 A Notação Θ Se f = O(h) e f = Ω(h), dizemos que f = Θ(h), ou seja, f é da ORDEM EXATA de h. e Algoritmo A executa em tempo no máximo h. O problema X requer pelo menos tempo h. Logo, o tempo de execução é ótimo.

23 Pior Caso Muitas vezes o tempo de execução de um algoritmo não depende apenas do tamanho da entrada, mas depende também do conteúdo da entrada. Se um algoritmo toma tempos diferentes para entradas do mesmo tamanho, em geral consideramos sempre o pior caso, ou seja, o tempo que o algoritmo gasta na pior entrada de tamanho n.

ANÁLISE DE ALGORITMOS: PARTE 3

ANÁLISE DE ALGORITMOS: PARTE 3 ANÁLISE DE ALGORITMOS: PARTE 3 Prof. André Backes 2 A notação grande-o é a forma mais conhecida e utilizada de análise Complexidade do nosso algoritmo no pior caso Seja de tempo ou de espaço É o caso mais

Leia mais

BC1424 Algoritmos e Estruturas de Dados I Aula 05 Custos de um algoritmo e funções de complexidade

BC1424 Algoritmos e Estruturas de Dados I Aula 05 Custos de um algoritmo e funções de complexidade BC1424 Algoritmos e Estruturas de Dados I Aula 05 Custos de um algoritmo e funções de complexidade Prof. Jesús P. Mena-Chalco 1Q-2016 1 1995 2015 2 Custo de um algoritmo e funções de complexidade Introdução

Leia mais

FACULDADE CAMPO LIMPO PAULISTA BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto a Análise de Algoritmos I Lista de Exercícios 1

FACULDADE CAMPO LIMPO PAULISTA BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto a Análise de Algoritmos I Lista de Exercícios 1 FACULDADE CAMPO LIMPO PAULISTA BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO Projeto a Análise de Algoritmos I Lista de Exercícios 1 Prof. Osvaldo. 1. Descreva alguns problemas associados ao emprego de metodologias

Leia mais

Complexidade de Algoritmos

Complexidade de Algoritmos 60 Desempenho 50 40 30 20 Algoritmo1 Algoritmo2 Algoritmo3 10 0 Complexidade de Algoritmos INFORMÁTICA BÁSICA Prof. Demétrios Coutinho C a m p u s P a u d o s F e r r o s D i s c i p l i n a d e A l g

Leia mais

MC102 - Algoritmos e programação de computadores. Aula 16: Busca e Ordenação em vetores

MC102 - Algoritmos e programação de computadores. Aula 16: Busca e Ordenação em vetores MC102 - Algoritmos e programação de computadores Aula 16: Busca e Ordenação em vetores Busca Dada uma coleção de n elementos, pretende-se saber se um determinado elemento valor está presente nessa coleção.

Leia mais

ESTRUTURAS DE REPETIÇÃO - PARTE 1

ESTRUTURAS DE REPETIÇÃO - PARTE 1 AULA 15 ESTRUTURAS DE REPETIÇÃO - PARTE 1 15.1 O comando enquanto-faca- Considere o problema de escrever um algoritmo para ler um número inteiro positivo, n, e escrever todos os números inteiros de 1 a

Leia mais

03 Análise de Algoritmos (parte 3) SCC201/501 - Introdução à Ciência de Computação II

03 Análise de Algoritmos (parte 3) SCC201/501 - Introdução à Ciência de Computação II 03 Análise de Algoritmos (parte 3) SCC201/501 - Introdução à Ciência de Computação II Prof. Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP 2010/2 Moacir

Leia mais

Teoria da computabilidade Indecidíveis Decidíveis

Teoria da computabilidade Indecidíveis Decidíveis Bacharelado em Ciência da Computação Disciplina: Algoritmos e Estruturas de Dados I Professor: Mário Luiz Rodrigues Oliveira Teoria da computabilidade Indecidíveis Decidíveis Teoria da complexidade Intratáveis:

Leia mais

Técnicas de Programação III Análise de Algoritmos (Continuação)

Técnicas de Programação III Análise de Algoritmos (Continuação) Técnicas de Programação III Análise de Algoritmos (Continuação) Aula ministrada em: 23/08/2007 Prof. Mauro L. C. Silva 1/10 Objetivos da Aula Entender a Análise e a Complexidade de Algoritmos 2/10 Avaliação

Leia mais

Área que visa determinar a complexidade (custo) de um algoritmo, com isso é possível:

Área que visa determinar a complexidade (custo) de um algoritmo, com isso é possível: Área que visa determinar a complexidade (custo) de um algoritmo, com isso é possível: Comparar algoritmos: existem algoritmos que resolvem o mesmo tipo de problema. Determinar se o algoritmo é ótimo :

Leia mais

4º 20/10/2003. ÍNDICE

4º 20/10/2003. ÍNDICE Universidade Federal de Juiz de Fora UFJF. Departamento de Ciência da Computação DCC. Curso de Ciência da Computação. Análise e Projeto de Algoritmos 4º período. Filippe Jabour. Atualizado em 20/10/2003.

Leia mais

Quantidade de memória necessária

Quantidade de memória necessária Tempo de processamento Um algoritmo que realiza uma tarefa em 10 horas é melhor que outro que realiza em 10 dias Quantidade de memória necessária Um algoritmo que usa 1MB de memória RAM é melhor que outro

Leia mais

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa

Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa Desenvolvimento de programas 1 Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração Análise do problema 2 Conhecer exatamente o que o problema

Leia mais

Estrutura de Dados. Algoritmos de Ordenação. Prof. Othon M. N. Batista Mestre em Informática

Estrutura de Dados. Algoritmos de Ordenação. Prof. Othon M. N. Batista Mestre em Informática Estrutura de Dados Algoritmos de Ordenação Prof. Othon M. N. Batista Mestre em Informática Roteiro Introdução Ordenação por Inserção Insertion Sort Ordenação por Seleção Selection Sort Ordenação por Bolha

Leia mais

Método BubbleSort. Estrutura de Dados II Prof Jairo Francisco de Souza

Método BubbleSort. Estrutura de Dados II Prof Jairo Francisco de Souza Método BubbleSort Estrutura de Dados II Prof Jairo Francisco de Souza Introdução Ordenar corresponde ao processo de reorganizar um conjunto de objetos em uma ordem ascendente ou descendente Consiste em

Leia mais

O mais leve e o mais pesado Algoritmos de Ordenação

O mais leve e o mais pesado Algoritmos de Ordenação Atividade 7 O mais leve e o mais pesado Algoritmos de Ordenação Sumário Os computadores são muitas vezes utilizados para colocar listas em algum tipo de ordem, por exemplo, nomes em ordem alfabética, compromissos

Leia mais

Métodos de Ordenação

Métodos de Ordenação Métodos de Ordenação Conceitos básicos sobre ordenação Ordenar corresponde ao processo de rearranjar um conjunto de objetos em uma ordem específica. Objetivo da ordenação: facilitar a recuperação posterior

Leia mais

Lista de exercícios sobre contagem de operações Prof. João B. Oliveira

Lista de exercícios sobre contagem de operações Prof. João B. Oliveira Lista de exercícios sobre contagem de operações Prof. João B. Oliveira 1. metodo m ( Vetor V ) int i, res = 0; para i de 1 a V.size res = res + V[i]; return res; Soma de elementos de um vetor, O( ). 2.

Leia mais

Existem duas categorias de algoritmos de ordenação: Os algoritmos de ordenação são avaliados de acordo com os seguintes critérios:

Existem duas categorias de algoritmos de ordenação: Os algoritmos de ordenação são avaliados de acordo com os seguintes critérios: MÉTODOS DE ORDENAÇÃO E PESQUISA ORDENAÇÃO: consiste em arranjar um conjunto de informações semelhantes numa ordem crescente ou decrescente; PESQUISA: consiste em executar uma pesquisa sobre a estrutura

Leia mais

INF1007: Programação 2 7 Busca em Vetores. 01/04/2014 (c) Dept. Informática - PUC-Rio 1

INF1007: Programação 2 7 Busca em Vetores. 01/04/2014 (c) Dept. Informática - PUC-Rio 1 INF1007: Programação 2 7 Busca em Vetores 01/04/2014 (c) Dept. Informática - PUC-Rio 1 Tópicos Principais Busca em vetor Busca linear Busca binária 01/04/2014 (c) Dept. Informática - PUC-Rio 2 Busca em

Leia mais

CURSO BÁSICO DE PROGRAMAÇÃO AULA 6. Revisão Laços de Repetição

CURSO BÁSICO DE PROGRAMAÇÃO AULA 6. Revisão Laços de Repetição CURSO BÁSICO DE PROGRAMAÇÃO AULA 6 Revisão Laços de Repetição TRABALHO 1º Semestre Prazo de entrega: 14/06. Individual ou em Dupla Compactar todos os exercícios em um arquivo. Enviar para o e-mail do PET:

Leia mais

Lógica de Programação Completo

Lógica de Programação Completo CONTEÚDO PROGRAMÁTICO Lógica de Programação Completo Carga horária: 40 horas TreinaWeb Tecnologia LTDA CNPJ: 06.156.637/0001-58 Av. Paulista, 1765 - Conj 71 e 72 São Paulo - SP CONTEÚDO PROGRAMÁTICO 1

Leia mais

I. Correção de Algoritmos Não-Recursivos

I. Correção de Algoritmos Não-Recursivos I. Correção de Algoritmos Não-Recursivos Nos exercícios a seguir, você deverá demonstrar a correção dos algoritmos por meio dos conceitos vistos nos slides da Aula 03. 1) Prove que o seguinte algoritmo

Leia mais

Lista de Exercícios 6 Funções

Lista de Exercícios 6 Funções UFMG/ICEx/DCC DCC Matemática Discreta Lista de Exercícios 6 Funções Ciências Exatas & Engenharias o Semestre de 06 Conceitos. Determine e justifique se a seguinte afirmação é verdadeira ou não para todas

Leia mais

O que é um Algoritmo?

O que é um Algoritmo? Introdução a Ciências da Computação Capítulo 2 O que é um Algoritmo? Página Tópicos Histórico Estruturas de Controle Comandos em seqüência Estruturas Condicionais Álgebra Booleana Estruturas de Repetição

Leia mais

CONCEITOS DE ALGORITMOS

CONCEITOS DE ALGORITMOS CONCEITOS DE ALGORITMOS Fundamentos da Programação de Computadores - 3ª Ed. 2012 Editora Prentice Hall ISBN 9788564574168 Ana Fernanda Gomes Ascênsio Edilene Aparecida Veneruchi de Campos Algoritmos são

Leia mais

Bacharelado em Ciência da Computação Matemática Discreta

Bacharelado em Ciência da Computação Matemática Discreta Bacharelado em Ciência da Computação Matemática Discreta Prof. Diego Mello da Silva Instituto Federal de Minas Gerais - Campus Formiga 27 de fevereiro de 2013 diego.silva@ifmg.edu.br (IFMG) Matemática

Leia mais

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO PRÉ AULA PRÉ AULA 02/11/2015

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO PRÉ AULA PRÉ AULA 02/11/2015 ALGORITMOS E LÓGICA DE PROGRAMAÇÃO Prof. Esp. Fabiano Taguchi http://fabianotaguchi.wordpress.com fabianotaguchi@gmail.com PRÉ AULA Um importante aspecto a ser considerado é que, na manipulação de uma

Leia mais

Aula 3 Listas Lineares Sequenciais Ordenadas. prof Leticia Winkler

Aula 3 Listas Lineares Sequenciais Ordenadas. prof Leticia Winkler Aula 3 Listas Lineares Sequenciais Ordenadas prof Leticia Winkler 1 Listas Lineares Sequenciais Ordenadas Elementos da lista estão dispostos num vetor (contíguos na memória) e ordenado de acordo com alguma

Leia mais

Noções de complexidade de algoritmos

Noções de complexidade de algoritmos Noções de complexidade de algoritmos 358 Tempo de Execução A avaliação de desempenho de um algoritmo quanto executado por um computador pode ser feita a posteriori ou a priori. Uma avaliação a posteriori

Leia mais

6. Pesquisa e Ordenação

6. Pesquisa e Ordenação 6. Pesquisa e Ordenação Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 6. Pesquisa e Ordenação Estruturas de Dados 1 / 30 Pesquisa de Informação A pesquisa eficiente de informação

Leia mais

VISÃO COMPUTACIONAL. Marcelo Henrique dos Santos

VISÃO COMPUTACIONAL. Marcelo Henrique dos Santos VISÃO COMPUTACIONAL Marcelo Henrique dos Santos marcelosantos@outlook.com São Paulo SP, Agosto/2013 INTRODUÇÃO Processamento de imagens é um processo onde a entrada do sistema é uma imagem e a saída é

Leia mais

Algoritmos Avançados Análise de Complexidade

Algoritmos Avançados Análise de Complexidade CCAE Centro de Ciências Aplicadas e Educação UFPB - Campus IV - Litoral Norte Algoritmos Avançados Análise de Complexidade COMPLEXIDADE DE ALGORITMOS Definição: A Complexidade de um Algoritmo consiste

Leia mais

Matrizes - Parte II. Juliana Pimentel. juliana.pimentel. Sala Bloco A, Torre 2

Matrizes - Parte II. Juliana Pimentel.  juliana.pimentel. Sala Bloco A, Torre 2 Matrizes - Parte II Juliana Pimentel juliana.pimentel@ufabc.edu.br http://hostel.ufabc.edu.br/ juliana.pimentel Sala 507-2 - Bloco A, Torre 2 AB BA (Comutativa) Considere as matrizes [ ] [ 1 0 1 2 A =

Leia mais

Exercícios sobre algoritmos

Exercícios sobre algoritmos Exercícios sobre algoritmos Exercícios envolvendo estruturas de decisão Fazer um algoritmo para: 1) Receber um número do usuário e mostrar se esse número é par ou não par 2) Receber 3 valores numéricos,

Leia mais

Análise de complexidade

Análise de complexidade Introdução Algoritmo: sequência de instruções necessárias para a resolução de um problema bem formulado (passíveis de implementação em computador) Estratégia: especificar (definir propriedades) arquitectura

Leia mais

Sistemas Distribuídos: Princípios e Algoritmos Introdução à Análise de Complexidade de Algoritmos

Sistemas Distribuídos: Princípios e Algoritmos Introdução à Análise de Complexidade de Algoritmos Sistemas Distribuídos: Princípios e Algoritmos Introdução à Análise de Complexidade de Algoritmos Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática

Leia mais

Recursividade e relações de recorrência

Recursividade e relações de recorrência Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Matemática Discreta - 06 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav

Leia mais

Aula 7: Portas Lógicas: AND, OR, NOT, XOR, NAND e NOR

Aula 7: Portas Lógicas: AND, OR, NOT, XOR, NAND e NOR Aula 7: Portas Lógicas: AND, OR, NOT, XOR, NAND e NOR Conforme discutido na última aula, cada operação lógica possui sua própria tabela verdade. A seguir será apresentado o conjunto básico de portas lógicas

Leia mais

Mecânica dos Fluidos. Análise Dimensional AULA 18. Prof.: Anastácio Pinto Gonçalves Filho

Mecânica dos Fluidos. Análise Dimensional AULA 18. Prof.: Anastácio Pinto Gonçalves Filho Mecânica dos Fluidos AULA 18 Análise Dimensional Prof.: Anastácio Pinto Gonçalves Filho Análise Dimensional Muitos problemas práticos de escoamento de fluidos são muitos complexos, tanto geometricamente

Leia mais

INFORMÁTICA APLICADA AULA 05 ALGORITMOS

INFORMÁTICA APLICADA AULA 05 ALGORITMOS UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 05 ALGORITMOS Profª ª Danielle Casillo ESTRUTURA DE REPETIÇÃO Nos exemplos e exercícios que

Leia mais

Introdução à Informática

Introdução à Informática Introdução à Informática Sistemas Numéricos Ageu Pacheco e Alexandre Meslin Objetivo da Aula: Partindo da base, ver como operações aritméticas são efetuadas em outras bases; em especial a 2. Adição na

Leia mais

Resolva os exercícios utilizando a linguagem de programação C

Resolva os exercícios utilizando a linguagem de programação C MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE SÃO PAULO CAMPUS DE PRESIDENTE EPITÁCIO Resolva os exercícios utilizando a linguagem de programação C 1 Manipulação de dados

Leia mais

Aula 2: Funções. Margarete Oliveira Domingues PGMET/INPE. Aula 2 p.1/57

Aula 2: Funções. Margarete Oliveira Domingues PGMET/INPE. Aula 2 p.1/57 Aula 2 p.1/57 Aula 2: Funções. Margarete Oliveira Domingues PGMET/INPE Definição e representação Aula 2 p.2/57 Aula 2 p.3/57 Função Definição: Uma função de um conjunto em um conjunto, é uma correspondência

Leia mais

Algoritmos e Programação I

Algoritmos e Programação I Algoritmos e Programação I Estruturas de Controle e Repetição Prof. Fernando Maia da Mota mota.fernandomaia@gmail.com CPCX/UFMS Fernando Maia da Mota 1 Estruturas de Controle Uma vez que a expressão condicional

Leia mais

Algoritmos e Estruturas de Dados

Algoritmos e Estruturas de Dados Algoritmos e Estruturas de Dados Introdução Prof. Sinaide Nunes Bezerra Vídeoaulas e exercícios em linguagem C, acesse www.mathgraph.com.br 1 de novembro de 2015 Sumário 1 Introdução

Leia mais

MC102 Algoritmos e Programação de Computadores

MC102 Algoritmos e Programação de Computadores MC102 Algoritmos e Programação de Computadores Instituto de Computação UNICAMP Primeiro Semestre de 2014 Roteiro 1 Maior número 2 Soma de n números 3 Fatorial 4 Máximo Divisor Comum (MDC) 5 Números primos

Leia mais

Análise de Algoritmos: Melhor caso, pior caso, caso médio

Análise de Algoritmos: Melhor caso, pior caso, caso médio Análise de Algoritmos: Melhor caso, pior caso, caso médio Fernando Lobo Algoritmos e Estrutura de Dados II 1 / 25 Sumário Rever um problema e um algoritmo que já conhecem. Descrevê-lo em pseudo-código

Leia mais

Algoritmos de pesquisa

Algoritmos de pesquisa Define-se pesquisa como a operação que permite encontrar ou concluir que não existe, um dado elemento num dado conjunto. A pesquisa de um elemento pode ser feita num conjunto ordenado ou não. Quando o

Leia mais

Objetivo: Desenvolver algoritmos a partir de problemas

Objetivo: Desenvolver algoritmos a partir de problemas Objetivo: Desenvolver algoritmos a partir de problemas Definição de Lógica Definição de Algoritmo Algoritmo x Lógica Diagrama de Blocos e Portugol Portugol: Estrutura da Linguagem Exemplos de Diagramas

Leia mais

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano yaratadano@utfpr.edu.br Aula 7 04/2014 Zeros reais de funções Parte 1 Objetivo Determinar valores aproximados para as soluções (raízes) de equações da

Leia mais

Estruturas de Repetição Parte I ENQUANTO-FAÇA

Estruturas de Repetição Parte I ENQUANTO-FAÇA Estruturas de Repetição Parte I ENQUANTO-FAÇA Prof. Dr. Edson Pimentel Centro de Matemática, Computação e Cognição Objetivos Reconhecer a necessidade do uso de estruturas de repetição Aprender a sintaxe

Leia mais

Estruturas de Repetição

Estruturas de Repetição Estruturas de Repetição Lista de Exercícios - 04 Programação de Computadores I Professor: Edwar Saliba Júnior Estruturas de Repetição O que são e para que servem? São comandos que são utilizados na programação

Leia mais

Estruturas de Dados Estáticas Cont.

Estruturas de Dados Estáticas Cont. Estruturas de Dados Estáticas 1 Estruturas de Dados Estáticas Cont. Matriz (arrays multidimensionais) Uma matriz é uma variável composta homogênea bidimensional formada por uma sequência de variáveis,

Leia mais

Algoritmos de ordenação Ordenação rápida ( Quicksort )

Algoritmos de ordenação Ordenação rápida ( Quicksort ) Ordenação rápida ( Quicksort ) Baseia-se num princípio muito simples que, quando aplicado recursivamente, acaba por ordenar o vector. Este princípio é composto por 2 passos essenciais: 1. Escolher um elemento

Leia mais

Programação em C e C++ com Lógica. Subtítulo

Programação em C e C++ com Lógica. Subtítulo Programação em C e C++ com Lógica Subtítulo Sobre a APTECH A Aptech é uma instituição global, modelo em capacitação profissional, que dispõe de diversos cursos com objetivo de preparar seus alunos para

Leia mais

5. Expressões aritméticas

5. Expressões aritméticas 5. Expressões aritméticas 5.1. Conceito de Expressão O conceito de expressão em termos computacionais está intimamente ligado ao conceito de expressão (ou fórmula) matemática, onde um conjunto de variáveis

Leia mais

Algoritmo e Linguagem C++

Algoritmo e Linguagem C++ Algoritmo e Linguagem C++ Tutor: Rafael Dias Ribeiro, MSc. rafaeldiasribeiro@gmail.com O que é um algoritmo Ambiente de trabalho com C++ Primeiro programa Formatação de saída Variáveis Comandos de entrada

Leia mais

Algoritmos para Gerar Permutações e Combinações em Ordem Lexicográfica

Algoritmos para Gerar Permutações e Combinações em Ordem Lexicográfica Matemática Discreta ESTiG\IPB Cap3. Princípios Elementares de Contagem pg 76 Algoritmos para Gerar Permutações e Combinações em Ordem Lexicográfica Algoritmo: conjunto de instruções cuja execução, numa

Leia mais

CAPÍTULO 5 ESTRUTURAS DE REPETIÇÃO

CAPÍTULO 5 ESTRUTURAS DE REPETIÇÃO CAPÍTULO 5 ESTRUTURAS DE REPETIÇÃO Fabio Augusto Oliveira Guilherme da Cunha Fonseca FEPI Centro Universitário de Itajubá Curso de Engenharia de Produção 1 INTRODUÇÃO Em vários momentos, na programação,

Leia mais

Notas em Álgebra Linear

Notas em Álgebra Linear Notas em Álgebra Linear 1 Pedro Rafael Lopes Fernandes Definições básicas Uma equação linear, nas variáveis é uma equação que pode ser escrita na forma: onde e os coeficientes são números reais ou complexos,

Leia mais

BCC202 - Estrutura de Dados I

BCC202 - Estrutura de Dados I BCC202 - Estrutura de Dados I Aula 15: Ordenação: ShellSort Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Computação, DECOM Website: www.decom.ufop.br/reifortes Email: reifortes@iceb.ufop.br

Leia mais

Investigação Operacional

Investigação Operacional Métodos de Programação Linear: Gráfica, (Mestrado) Engenharia Industrial http://dps.uminho.pt/pessoais/zan - Escola de Engenharia Departamento de Produção e Sistemas 1 Representação Gráfica Considere o

Leia mais

Programação Linear - Parte 3

Programação Linear - Parte 3 Matemática Industrial - RC/UFG Programação Linear - Parte 3 Prof. Thiago Alves de Queiroz 1/2016 Thiago Queiroz (IMTec) Parte 3 1/2016 1 / 26 O Método Simplex Encontre o vértice ótimo pesquisando um subconjunto

Leia mais

(versão preliminar) exceto possivelmente para x = a. Dizemos que o limite de f(x) quando x tende para x = a é um numero L, e escrevemos

(versão preliminar) exceto possivelmente para x = a. Dizemos que o limite de f(x) quando x tende para x = a é um numero L, e escrevemos LIMITE DE FUNÇÕES REAIS JOSÉ ANTÔNIO G. MIRANDA versão preinar). Revisão: Limite e Funções Continuas Definição Limite de Seqüências). Dizemos que uma seqüência de números reais n convergente para um número

Leia mais

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO Dados em Algoritmos Quando escrevemos nossos programas, trabalhamos com: Dados que nós fornecemos ao programa Dados

Leia mais

ESTATÍSTICA Medidas de Síntese

ESTATÍSTICA Medidas de Síntese 2.3 - Medidas de Síntese Além das tabelas e gráficos um conjunto de dados referente a uma variável QUANTITATIVA pode ser resumido (apresentado) através de Medidas de Síntese, também chamadas de Medidas

Leia mais

Solucionador de circuitos lógicos em C++

Solucionador de circuitos lógicos em C++ UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE DEPARTAMENTO DE ENGENHARIA DE COMPUTAÇÃO E AUTOMAÇÃO DCA Solucionador de circuitos lógicos em C++ Camila de Oliveira Silva, 2009028716 Victor Neves Nogueira,

Leia mais

Definição. Motivação para criação. Utilização de subrotinas. Características das subrotinas. Utilização de subrotinas ALGORITMOS

Definição. Motivação para criação. Utilização de subrotinas. Características das subrotinas. Utilização de subrotinas ALGORITMOS ALGORITMOS Definição Um conceito simples seria: Subrotinas (Procedimentos e Funções) Subrotina é um parcela de código computacional que executa uma tarefa bem definida, sendo que essa tarefa pode ser executada

Leia mais

Algoritmos de pesquisa

Algoritmos de pesquisa Define-se pesquisa como a operação que permite encontrar ou concluir que não existe, um dado elemento num dado conjunto. A pesquisa de um elemento pode ser feita num conjunto ordenado ou não. Quando o

Leia mais

Prof. Dr. Marco Antonio Leonel Caetano

Prof. Dr. Marco Antonio Leonel Caetano Forecasting e Otimização de Carteiras com Matlab Prof. Dr. Marco Antonio Matlab O que é? Como funciona? Fundamentos - Ambiente de programação avançada - Ambiente de execução de programas - Permite utilização

Leia mais

Análise e Síntese de Algoritmos. Revisão CLRS, Cap. 7-10

Análise e Síntese de Algoritmos. Revisão CLRS, Cap. 7-10 Análise e Síntese de Algoritmos Revisão CLRS, Cap. 7-10 Contexto Revisão Algoritmos e complexidade Notação Fundamentos: somatórios, recorrências, etc. Exemplos de algoritmos Ordenação Procura Selecção

Leia mais

Introdução à Programação 2006/07. Algoritmos

Introdução à Programação 2006/07. Algoritmos Introdução à Programação 2006/07 Algoritmos Objectivos da Aula Algoritmos e suas características Técnicas de Descrição de Algoritmos Linguagem Natural Pseudocódigo Fluxogramas Especificação do problema

Leia mais

tipo e tamanho e com os "mesmos" elementos do vetor A, ou seja, B[i] = A[i].

tipo e tamanho e com os mesmos elementos do vetor A, ou seja, B[i] = A[i]. INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA SUL-RIO- GRANDENSE CAMPUS SAPUCAIA DO SUL PROFESSOR: RICARDO LUIS DOS SANTOS EXERCÍCIO DE REVISÃO E FIXAÇÃO DE CONTEÚDO - ARRAYS 1. Criar um vetor A

Leia mais

Prof. Adriano Maranhão COMPILADORES

Prof. Adriano Maranhão COMPILADORES Prof. Adriano Maranhão COMPILADORES LINGUAGENS: INTERPRETADAS X COMPILADAS Resumo: Linguagem compilada: Se o método utilizado traduz todo o texto do programa, para só depois executar o programa, então

Leia mais

C Operadores e Expressões

C Operadores e Expressões C Operadores e Expressões Adriano Cruz adriano@nce.ufrj.br Instituto de Matemática Departamento de Ciência da Computação UFRJ 15 de agosto de 2013 Adriano Cruz adriano@nce.ufrj.br (IM-DCC-UFRJ)C Operadores

Leia mais

Exercícios: Recursão

Exercícios: Recursão UNIVERSIDADE FEDERAL DE UBERLÂNDIA 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 de um número inteiro N. 2) Faça uma

Leia mais

Programação de Computadores Profa Jacqueline 1

Programação de Computadores Profa Jacqueline 1 Programação de Computadores Profa Jacqueline 1 REVISÃO Construção de Algoritmos Estruturas de Controle Objetivo: Abordar as técnicas para entrada e saída de dados e as estruturas para controle do fluxo

Leia mais

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE)

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Algoritmos e Estruturas de Dados 1 Prof. Eduardo 1 ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Até o momento da disciplina vimos comandos de entrada, processamento e saída

Leia mais

Introdução à Linguagem C++

Introdução à Linguagem C++ Introdução à Linguagem C++ C++: Definição C++ C A Linguagem de Programação C++ pode ser definida como uma extensão da Linguagem C; Todo código de programação em Linguagem C pode a priori ser compilado

Leia mais

II. Funções de uma única variável

II. Funções de uma única variável II. Funções de uma única variável 1 II.1. Conceitos básicos A otimização de de funções de de uma única variável consiste no no tipo mais elementar de de otimização. Importância: Tipo de problema encontrado

Leia mais

Programação de Computadores III

Programação de Computadores III Programação de Computadores III Pseudocódigo e Estruturas Básicas de Controle Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.1/tcc-00.157

Leia mais

Introdução a Algoritmos - Revisão

Introdução a Algoritmos - Revisão Introdução a Algoritmos - Revisão O computador é uma máquina capaz de seguir uma certa espécie de algoritmos, chamados programas Ele possui uma memória, capaz de armazenar dados, e uma unidade aritmética,

Leia mais

Algoritmos e Programação

Algoritmos e Programação Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Parte 02 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav

Leia mais

Este conceito é bastante simples e será útil e conveniente nos itens seguintes, na definição das estruturas básicas de controle de execução.

Este conceito é bastante simples e será útil e conveniente nos itens seguintes, na definição das estruturas básicas de controle de execução. Capítulo 7 Controle de Fluxo de Execução Até o momento os algoritmos estudados utilizam apenas instruções primitivas de atribuição, e de entrada e saída de dados. Qualquer conjunto de dados fornecido a

Leia mais

7. Introdução à Complexidade de Algoritmos

7. Introdução à Complexidade de Algoritmos 7. Introdução à Complexidade de Algoritmos Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 7. Introdução à Complexidade de Algoritmos Estruturas de Dados 1 / 1 Análise de Algoritmos

Leia mais

Exemplos de programação em PASCAL

Exemplos de programação em PASCAL Exemplos de programação em PASCAL Exemplos baseados no cálculo de médias Revisão das instruções de repetição cíclica O conceito de acumulador e contador Utilização de arrays Problema: Dada uma sequência

Leia mais

Problema da Mochila Booleana: Uma Solução Usando Programação Dinâmica. Gabriel Rosa Guilherme Alves

Problema da Mochila Booleana: Uma Solução Usando Programação Dinâmica. Gabriel Rosa Guilherme Alves Problema da Mochila Booleana: Uma Solução Usando Programação Dinâmica Gabriel Rosa Guilherme Alves Agenda O problema, definição e exemplo Construindo uma solução... Expressão recursiva Algoritmo recursivo

Leia mais

3 Estimação e Compensação de movimento na codificação de vídeo

3 Estimação e Compensação de movimento na codificação de vídeo Estimação e Compensação de movimento na codificação de vídeo 36 3 Estimação e Compensação de movimento na codificação de vídeo O objetivo do modelo temporal (que engloba as fases de estimação e compensação

Leia mais

CURSO BÁSICO DE PROGRAMAÇÃO AULA 3. Revisão Estrutura de Decisão Se Então

CURSO BÁSICO DE PROGRAMAÇÃO AULA 3. Revisão Estrutura de Decisão Se Então CURSO BÁSICO DE PROGRAMAÇÃO AULA 3 Revisão Estrutura de Decisão Se Então Revisão da aula anterior 1. Variáveis 2. Estrutura de um Algoritmo 3. Operadores 4. Visualg Variável Revisão da aula anterior É

Leia mais

Lógica de Programação I

Lógica de Programação I Gilson de Souza Carvalho gaucho.gilson@hotmail.com 1 Comando Do/While Além do comando while, existem outras estruturas para implementar laços repetitivos. O comando Do/While funciona de forma similar ao

Leia mais

Metodologia para resolução de um problema

Metodologia para resolução de um problema 1 Metodologia para resolução de um problema 1. Pôr o problema de modo claro. 2. Definir os dados necessários para resolver o problema (input) e o que se pretende que o problema forneça (output). 3. Pensar

Leia mais

α ( u 1 - u 2 ) = u 3 - u 2.

α ( u 1 - u 2 ) = u 3 - u 2. 2- NOÇÕES DE CONVEXIDADE E FORMULAÇÃO MATEMÁTICA DE PROBLEMAS DE PROGRAMAÇÃO LINEAR 21 Noções de Convexidade 211 - Combinação Convexa de pontos ponto b = αx 1 Considere C um conjunto contendo os pontos

Leia mais

Variáveis, Tipos de Dados e Operadores

Variáveis, Tipos de Dados e Operadores ! Variáveis, Tipos de Dados e Operadores Engenharias Informática Aplicada 2.o sem/2013 Profa Suely (e-mail: smaoki@yahoo.com) VARIÁVEL VARIÁVEL É um local lógico, ligado a um endereço físico da memória

Leia mais

Estruturas de Dados, Análise de Algoritmos e Complexidade Estrutural. Carlos Alberto Alonso Sanches

Estruturas de Dados, Análise de Algoritmos e Complexidade Estrutural. Carlos Alberto Alonso Sanches CT-234 Estruturas de Dados, Análise de Algoritmos e Complexidade Estrutural Carlos Alberto Alonso Sanches CT-234 2) Algoritmos recursivos Indução matemática, recursão, recorrências Indução matemática Uma

Leia mais

Introdução ao Scilab

Introdução ao Scilab Universidade do Estado do Rio de Janeiro Faculdade de Engenharia Laboratório de Engenharia Elétrica Introdução ao Scilab (Aula 3) Elaine de Mattos Silva Orientador: Prof. José Paulo Vilela Soares da Cunha

Leia mais

Decomposição de um número composto. Todo número composto pode ser decomposto em fatores primos Ex: = 2 2 X 3 X 5 X 7

Decomposição de um número composto. Todo número composto pode ser decomposto em fatores primos Ex: = 2 2 X 3 X 5 X 7 Decomposição de um número composto Todo número composto pode ser decomposto em fatores primos Ex: 420 2 210 2 105 3 35 5 7 7 1 420= 2 2 X 3 X 5 X 7 Determinação do número de divisores de um número natural

Leia mais

Álgebra Linear e Geometria Analítica

Álgebra Linear e Geometria Analítica Álgebra Linear e Geometria Analítica Engenharia Electrotécnica Escola Superior de Tecnologia de Viseu wwwestvipvpt/paginaspessoais/lucas lucas@matestvipvpt 007/008 Álgebra Linear e Geometria Analítica

Leia mais

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO PRÓ-REITORIA DE ENSINO DE GRADUAÇÃO

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO PRÓ-REITORIA DE ENSINO DE GRADUAÇÃO UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO PRÓ-REITORIA DE ENSINO DE GRADUAÇÃO Rua Dom Manoel de Medeiros, s/n Dois Irmãos 52171-900 Recife-PE Fone: 0xx-81-332060-40 proreitor@preg.ufrpe.br PLANO DE ENSINO

Leia mais

1ª Lista de Exercícios

1ª Lista de Exercícios Universidade Federal do Rio de Janeiro Data: 26/04/05 Disciplina: Computação I 1ª Lista de Exercícios 1) Faça um programa, em pseudo-código, que peça ao usuário que informe n números reais e então calcule

Leia mais