- A Computação Científica é uma área de estudo que, utilizando computadores, se interessa

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

Download "- A Computação Científica é uma área de estudo que, utilizando computadores, se interessa"

Transcrição

1 Definição Definição - A é uma área de estudo que, utilizando computadores, se interessa - pela construção de modelos matemáticos e - pelas técnicas para determinar soluções numéricas na análise e resolução de problemas reais (científicos e da engenharia). - A consiste, em termos práticos, na aplicação - da simulação computacional e - de outras formas de computação, na análise e resolução de problemas reais em várias áreas científicas e tecnológicas. - As aplicações computacionais desenvolvidas para modelar sistemas reais, requerem - grandes quantidades de dados iniciais e de parâmetros de entrada, - uma grande quantidade de cálculos, fazendo com que a relação entre e Computação Numérica seja muito forte. - A Computação Numérica define-se como a utilização de computadores na manipulação de números. Capítulo 1. 1/37

2 Definição - Em algumas áreas do conhecimento, - a experimentação em laboratório é extremamente cara ou até mesmo impossível, - o que faz com que a tenha um papel de grande importância, - configurando uma terceira vertente da ciência (complemento à experimentação/observação e à teoria). - Considere-se o seguinte exemplo: - tendo em conta a grande aproximação da antena do telemóvel com a cabeça humana, essencialmente aquando da realização de chamadas, os utilizadores são expostos a campos eletromagnéticos de níveis consideráveis em períodos de tempo cada vez maiores. - Devido à impossibilidade técnica e ética de efetuar medições dos níveis destes campos em seres humanos ou animais, as simulações numéricas são de crucial importância nestes estudos. - Com a é possível identificar as áreas e os tecidos mais afetados (normalmente são aqueles mais próximos da antena) e os pontos de concentração de ondas eletromagnéticas. - A construção de Modelos Matemáticos é possivelmente a vertente da - em que os investigadores têm ocupado mais tempo no seu estudo, - há um aumento da quantidade de modelos para resolver problemas (cada vez mais complexos), - o desenvolvimento de modelos já existentes. Capítulo 1. 2/37

3 Modelo genérico Modelo genérico - De uma maneira geral, um modelo é uma estrutura (abstrata ou física) construída para exibir funções e características (consideradas) fundamentais de um dado sistema real. - Segundo diferentes perspetivas, a mesma realidade dá origem a diferentes modelos. - É importante que o comportamento do modelo - seja fiel à realidade (ou, melhor, à simplificação da realidade que se idealizou), - seja de fácil manipulação! - Os modelos permitem - a experimentação sem interferência com a realidade, - explicitar relações que não eram claras até ao momento da sua construção e análise. - O termo "modelo" é habitualmente usado por uma estrutura construída propositadamente, para expor aspetos e características de alguns objetos entre si. - É suposto que um modelo - seja uma representação suficientemente precisa das características essenciais da situação a analisar, - de modo que as conclusões (soluções) obtidas a partir dele sejam também válidas para o problema real. Capítulo 1. 3/37

4 Modelo genérico - O modelo é um esquema simplificado para a interpretação da realidade - a complexidade do mundo real a necessidade de formular modelos simplificadores; - a mera acumulação de observações não fornece explicação satisfatória do fenómeno necessidade de sistematizar e racionalizar os factos conhecidos: - selecionando os aspetos mais importantes e - desprezando os que considera irrelevantes. - De uma maneira geral, pode-se considerar que existem três tipos de modelos: - modelos icónicos - são representações reduzidas de estados, objetos ou acontecimentos; - representam o fenómeno real apenas com uma transformação de escala; - por ex., os mapas. - modelos analógicos, - empregam uma propriedade para representar outra; - por ex., utilizar gráficos a cores e com legendas. - modelos simbólicos - as propriedades do fenómeno real são expressas simbolicamente; - por ex., os modelos matemáticos. Capítulo 1. 4/37

5 Modelo matemático Modelo matemático - Uma das tarefas mais importantes dos Matemáticos é: - analisar situações da vida real e - identificar modelos matemáticos que permitam a sua interpretação. - Existem, na literatura, muitas definições de modelo matemático. - Edwards e Hamsom (1990): "um modelo matemático é o produto da transferência de um conjunto de elementos matemáticos (como sejam, funções ou equações), com vista à obtenção de uma representação matemática de uma parcela do mundo real". - Swetz e Hartzler (1991): "modelo matemático de um objeto ou de um fenómeno real é um conjunto de regras ou leis, de natureza matemática, que representam adequadamente o objeto ou o fenómeno na mente de um observador". Capítulo 1. 5/37

6 Modelo matemático - Os modelos matemáticos - São representações idealizadas, mas expressas em termos de símbolos e expressões matemáticas. - Consistem num sistema de equações e de expressões matemáticas relacionadas, que descrevem os aspetos essenciais do problema. - Podem ter diversas formas como uma única equação, um sistema de equações, um sistema de inequações ou, para casos mais complexos, um conjunto de equações diferenciais. - O modo como a teoria e as aplicações da Matemática se relacionam designa-se por: - matematização ou - modelação matemática. - Isto significa, para Ian Stwart (matemático inglês), que "Qualquer descrição matemática do mundo real é um modelo. Manipulando o modelo esperamos compreender algo da realidade. E já não perguntamos se o modelo é verdadeiro, perguntamos unicamente se as suas implicações podem ser verificadas experimentalmente". Capítulo 1. 6/37

7 Tipos de modelos matemáticos Tipos de modelos matemáticos - Os modelos matemáticos podem ser, pela sua natureza, de dois tipos: - modelos prescritivos, e - modelos descritivos. - Os modelos matemáticos prescritivos têm como característica principal, o facto de o resultado de uma operação ser prescrita para solucionar um problema do sistema real. - Os modelos prescritivos - baseiam-se na representação dos objetivos e das restrições de um processo para o qual se deseja descobrir soluções ótimas; - ou seja, o modelo é elaborado segundo uma técnica que permite encontrar a melhor solução, ou política de ação, para os condicionamentos representados. - Exemplos de modelos prescritivos: - modelos de otimização; - modelos que usam métodos numéricos. Capítulo 1. 7/37

8 Tipos de modelos matemáticos - Os modelos que usam métodos numéricos - são expressos apenas por uma equação matemática; - a sua resolução consiste em determinar as soluções que anulam aquela equação (ou seja, os seus zeros). - Os modelos de otimização podem ser resolvidos usando dois tipos diferentes de métodos: - exatos, e - aproximados. - Nos métodos exatos, a solução obtida - é a melhor, dentre todas as possíveis, dados os condicionamentos do modelo; - otimiza (maximiza ou minimiza) uma função de mérito (por ex., o custo total de produção); e - respeita (não viola), em simultâneo, todas as restrições do problema (por ex:, satisfazer a procura). - Pode ser extremamente caro, em termos computacionais, resolver um problema com métodos exatos. - Neste caso, pode decidir-se por resolver o problema de forma aproximada (heuristicamente). Capítulo 1. 8/37

9 Tipos de modelos matemáticos - Resolver o problema usando um método aproximado (heurístico) - significa que não se pode garantir que se obtenha a solução ótima em todos cenários analisados; - mas pode-se garantir a obtenção de uma solução de boa qualidade com baixo custo computacional. - Uma abordagem heurística tenta utilizar um método racional para encontrar uma boa (próxima do ótimo) solução. - Geralmente a heurística apresenta uma maneira mais rápida e fácil de resolver um problema, em relação ao método matemático prescritivo puro. - Exemplos de métodos heurísticos são - Algoritmos Evolutivos (Algoritmos Genéticos, Pesquisa Tabu,...), - Redes Neuronais e - Busca Local. - Mas isto não significa que se deve resolver todos os problemas de grande dimensão e caros, em termos computacionais, usando métodos aproximados. Capítulo 1. 9/37

10 Tipos de modelos matemáticos - Por exemplo: - suponha-se que existam 3 trabalhos para serem realizados e 3 máquinas disponíveis para os realizar. - O custo de cada máquina para cada trabalho está na seguinte tabela: Máquina 1 Máquina 2 Máquina 3 Trabalho Trabalho Trabalho Heurística 1: Alocação do menor custo dos trabalhos. Qual o custo total? - Heurística 2: Alocação do menor custo das máquinas. Qual o custo total? - Usando a Heurística 1 e afetando por ordem os Trabalhos: custo total é 40 ( ), pares de afetação: (Trabalho 1, Máquina 1), (Trabalho 2, Máquina 2) e (Trabalho 3, Máquina 3). - Usando a Heurística 2 e afetando por ordem as Máquinas: o custo total é 24 ( ), pares de afetação: (Máquina 1, Trabalho 3), (Máquina 2, Trabalho 2) e (Máquina 3, Trabalho 1). - Notar que: a melhor solução (custo 22) é um pouco melhor que a solução da heurística 2 (custo 24). Capítulo 1. 10/37

11 Tipos de modelos matemáticos - Os modelos matemáticos descritivos - são utilizados para acompanhar o comportamento de um sistema. - As suas conclusões são obtidas através da perceção do modelador. - Os modelos deste tipo mais usuais são os modelos de simulação. - Os modelos descritivos são utilizados - na representação de sistemas reais (ou propostos) e - na experimentação de diferentes cenários e políticas de ação nos mesmos. - As grandes motivações para o uso destas técnicas são - a flexibilidade na representação de modelos complexos e - a facilidade de aplicação, o que possibilita prever o comportamento do sistema modelado no horizonte de planeamento escolhido. - Os resultados dos testes apresentam uma visão futura do sistema, auxiliando no processo de tomada de decisões no momento. Capítulo 1. 11/37

12 Tipos de modelos matemáticos - Ao contrário dos métodos prescritivos, os modelos descritivos são utilizados para comparar políticas de ação já escolhidas pelo decisor, não esperando que o modelo indique a melhor solução possível. - Por exemplo: suponha-se que se pretende testar duas políticas de filas numa Agência Bancária: 1) cada caixa tem a sua própria fila; 2) uma fila única para todas as caixas. Neste caso, pode-se supor que - o tempo de atendimento é baseado numa distribuição de Poisson e - que os tempos de chegada dos clientes à Agência são baseados numa distribuição Exponencial Negativa. Depois, simulam-se as duas políticas para verificar qual delas é a melhor (segundo certo objetivo). Capítulo 1. 12/37

13 Modelação matemática Modelação matemática - O processo de resolução de um problema - pode ser visto como uma sequência de etapas que devem ser realizadas e melhoradas, - até que o modelo matemático construído para representar o problema forneça resultados satisfatórios. - A construção de um bom modelo matemático exige - alto nível de abstração e - de conhecimentos académicos (teoria) e/ou empíricos (prática) sobre o problema em análise. - Notar que, - não é possível o controlo sobre a maioria dos sistemas reais (complexos), - mas é possível controlar a complexidade dos modelos matemáticos que se constroem. - Os sistemas reais complexos - podem ser aproximados por modelos matemáticos simples, - que usam equações matemáticas que podem ser resolvidas analiticamente (obtendo soluções exatas). - No entanto, estes modelos simples oferecem, provavelmente, - uma descrição muito distante do comportamento dos sistemas reais. Capítulo 1. 13/37

14 Modelação matemática - Uma descrição mais precisa do sistema real pode ser conseguida - com a introdução de mais características do sistema no modelo matemático, - o que implica a utilização de equações matemáticas mais complexas e mais difíceis de resolver. - Para estes casos, - podem não existir soluções analíticas para o modelo; - havendo necessidade de se recorrer à determinação de soluções aproximadas, obtidas através de - métodos numéricos ou - métodos heurísticos. - Existem, na literatura, vários diagramas para descrever o processo de resolução de um problema (modelação matemática). - Assim, pode-se considerar que este processo é composto por cinco etapas (ver diagrama em baixo): 1ª) Definição (Formulação) do Problema, 2ª) Construção do Modelo (Matemático), 3ª) Determinação da Solução (do Modelo), 4ª) Validação do Modelo e Análise da Solução, 5ª) Implementação da Solução. Capítulo 1. 14/37

15 Modelação matemática Capítulo 1. 15/37

16 Modelação matemática Capítulo 1. 16/37

17 Modelação matemática - Definição do Problema Modelação matemática - Definição do Problema - Elabora-se a definição (formulação) matemática do problema real a ser resolvido. - Normalmente, - começa-se com um diagnóstico da situação e - termina-se com uma descrição formal do problema. - Uma definição cuidadosa do problema é crucial, - pois caso contrário pode-se estar, mais tarde, a resolver o problema errado; - ou seja, deve-se evitar extrair a resposta certa do problema errado! - Envolve a "Perceção do Problema" e a "Recolha de Dados". - Deve-se identificar as entidades associadas ao problema, que são as seguintes: - os dados (o que é conhecido), - o objetivo (que é desconhecido e pretende-se determinar) e - as restrições (as condições do problema apresentadas). Capítulo 1. 17/37

18 Modelação matemática - Construção do Modelo Matemático Modelação matemática - Construção do Modelo Matemático - Consiste na transformação do problema real num problema matemático através de uma formulação matemática, a qual deve ser tratável em termos computacionais. - Deve-se começar por - tentar selecionar um modelo, entre os vários já conhecidos e que possam ser aplicados ao problema (é frequente ser possível aplicar diferentes modelos ao mesmo problema real). - Geralmente o modelo matemático possui mais soluções que o problema real. - Também deve haver uma grande comunicação com a fase da Recolha de Dados, pois o modelo pode necessitar de algo mais do que foi feito na etapa anterior, - quer em termos dos dados recolhidos - quer na forma como são apresentados. - Nesta etapa deve-se reproduzir as relações entre os componentes do problema (objetivos, variáveis de decisão, parâmetros, restrições,...). Capítulo 1. 18/37

19 Modelação matemática - Determinação da Solução do Modelo Modelação matemática - Determinação da Solução do Modelo - Faz-se a escolha do método numérico mais apropriado para resolver o modelo matemático, obtido na construção do modelo matemático. - Na escolha do método mais eficiente deve-se ter em conta os seguintes aspetos: - precisão desejada para os resultados; - capacidade do método em conduzir aos resultados desejados (velocidade de convergência); - esforço computacional despendido (tempo de processamento e economia de memória). - Depois de feita a escolha do método, - este é descrito através de um algoritmo, - o qual é posteriormente implementado num computador através de uma linguagem de programação; - por fim, a execução daquele programa tem em vista a obtenção dos resultados numéricos (soluções). - Esta etapa pode, então, ser subdividida nas 3 fases seguintes (depois de escolhido o método): - elaboração do algoritmo, - implementação do algoritmo (codificação do programa), - processamento (execução) do programa. Capítulo 1. 19/37

20 Modelação matemática - Validação do Modelo e Análise da Solução Modelação matemática - Validação do Modelo e Análise da Solução - Verifica-se - a consistência da solução obtida para o modelo (validação do modelo) e - a sua adequação ao problema real (análise da solução). - Se a solução não se mostrar satisfatória (modelo não válido) deve-se - construir um novo modelo matemático, através de uma nova formulação matemática, e - determinar uma nova solução numérica. - Alguns modelos matemáticos podem - produzir várias soluções (e não apenas uma) e - algumas delas (ou todas) não terem sentido físico ou químico - por exemplo: tempo negativo, concentração complexa, etc. - Um dos objetivos desta etapa é justamente discernir qual a solução válida para o problema real dentre as várias fornecidas pelo modelo matemático (se existirem algumas). Capítulo 1. 20/37

21 Modelação matemática - Implementação da Solução Modelação matemática - Implementação da Solução - Nesta etapa deve-se ter em atenção os seguintes aspetos: - garantir que, do papel para o sistema real, não se desvirtua a solução; - ter abertura para readaptações (modelo e/ou solução) causadas pelas dificuldades de implementação; - verificar a existência de problemas: - técnicos, - associados ao comportamento individual dos elementos da organização, - relacionados com o ambiente organizacional; - dar importância aos aspetos comportamentais; - verificar se a realidade ainda é a mesma do início do estudo. Capítulo 1. 21/37

22 Modelação matemática - Exemplo Modelação matemática - Exemplo - Definição do Problema - Um fabricante de plásticos produz 2 tipos de plástico: - Especial e - Normal. - Cada tonelada de plástico Especial exige - 2 horas na máquina A e - 5 horas na máquina B; - Cada tonelada de plástico Normal exige - 2 horas na máquina A e - 3 horas na máquina B. - Como - a máquina A está disponível 8 horas por dia e - a máquina B está disponível 15 horas por dia, quantas toneladas de cada tipo de plástico devem ser produzidas diariamente de maneira que as duas máquinas se mantenham totalmente ocupadas? Capítulo 1. 22/37

23 Modelação matemática - Exemplo - Construção do Modelo Matemático plástico Especial = variável X } plástico Normal = variável Y { - Determinação da Solução do Modelo 2X + 2Y = 8 5X + 3Y = 15 - O processo consiste na resolução de um sistema de duas equações com duas incógnitas, usando o método de substituição de variáveis. { 2X + 2Y = 8 5X + 3Y = 15 - Análise dos Resultados (Solução) Devem ser produzidas: { X = 4 Y 20 5Y + 3Y = 15 1,5 toneladas de plástico Especial (variável X) e 2,5 toneladas de plástico Normal (variável Y). { X = 4 Y Y = 5/2 { X = 3/2 = 1.5 Y = 5/2 = 2.5 Capítulo 1. 23/37

24 Elaboração de algoritmos Elaboração de algoritmos - Uma das fases mais importantes na resolução de um problema é a elaboração de um algoritmo que traduza o método associado ao modelo matemático construído. - Selecionado o método associado ao modelo matemático construído (definido através de expressões aritméticas e lógicas), o passo seguinte é realizar uma descrição do método através de um algoritmo. - A descrição do algoritmo, através de uma notação algorítmica, melhora o seu entendimento, pois - apenas os aspetos do raciocínio matemático são realçados, - não é necessário levar em consideração os detalhes de implementação das linguagens de programação. Capítulo 1. 24/37

25 Elaboração de algoritmos - Estrutura do algoritmo Elaboração de algoritmos - Estrutura do algoritmo - Um algoritmo deve iniciar-se com Algoritmo <nome-do-algoritmo> e terminar com fim_algoritmo - Para descrever a finalidade do algoritmo, deve ser utilizado { Objetivo: <objetivo-do-algoritmo> } - Os dados necessários para a execução de um algoritmo são requisitados pelo comando parâmetros de entrada: <lista-de-variáveis> onde <lista-de-variáveis> são os nomes das variáveis contendo os valores fornecidos. - Não é necessário descrever exatamente como os valores são fornecidas ao algoritmo. - Os valores calculados pelo algoritmo são disponibilizados pelo comando parâmetros de saída: <lista-de-variáveis> podendo a <lista-de-variáveis> ser ampliada ou reduzida pelo programador. Capítulo 1. 25/37

26 Elaboração de algoritmos - Variáveis e comentários Elaboração de algoritmos - Variáveis e comentários - Uma variável corresponde a uma posição de memória do computador onde está, ou poderá estar, armazenado um determinado valor. - As variáveis são representadas por identificadores, podendo os elementos de vetores e matrizes serem referenciados por subscritos ou índices (por exemplo, v i ou v(i) e m ij ou m(i,j)). - Um comentário é - um texto inserido em qualquer parte o algoritmo para aumentar a sua clareza.; - deve ser delimitado por chavetas ({ <texto> }); - por exemplo, { cálculo da raiz }. Capítulo 1. 26/37

27 Elaboração de algoritmos - Expressões e comando de atribuição Elaboração de algoritmos - Expressões e comando de atribuição - Existem três tipos de expressões, dependendo dos tipos dos operadores e das variáveis envolvidas: - aritméticas, - lógicas e - literais. - O símbolo é usado para atribuir o resultado de uma expressão a uma variável, <variável> <expressão> - Por exemplo, velocidade deslocamento/tempo mensagem matriz singular - Na elaboração dos algoritmos, podem ser usadas - operadores aritméticos, relacionais e lógicos - funções matemáticas predefinidas: trigonométricas e numéricas. Capítulo 1. 27/37

28 Elaboração de algoritmos - Comandos de entrada e saída Elaboração de algoritmos - Comandos de entrada e saída - O comando leia: <lista-de-variáveis> indica que a <lista-de-variáveis> está disponível para leitura nalgum dispositivo externo. - Por sua vez, o comando escreva: <lista-de-variáveis> deve ser utilizado para indicar onde certos valores de interesse - estão disponíveis no programa e - devem ser escritos nalgum dispositivo externo. Capítulo 1. 28/37

29 Elaboração de algoritmos - Estruturas condicionais Elaboração de algoritmos - Estruturas condicionais - Uma estrutura condicional torna possível a escolha dos comandos a serem executados quando certa condição for satisfeita ou não. - Podem ser simples ou compostas. - Estrutura condicional simples se <condição> então <comandos> fim_se - Estrutura condicional composta se <condição> então <comandos_1> senão <comandos_2> fim_se Capítulo 1. 29/37

30 Elaboração de algoritmos - Estruturas de repetição Elaboração de algoritmos - Estruturas de repetição - Número indefinido de repetições repita <comandos_1> se <condição> então interrompa fim_se <comandos_2> fim_repita <comandos_3> - Número definido de repetições para <controle> <valor-inicial> até <valor-final> passo <delta> faça <comandos> fim_para Capítulo 1. 30/37

31 Elaboração de algoritmos - Falha no algoritmo Elaboração de algoritmos - Falha no algoritmo - Para indicar que haverá uma falha evidente na execução do algoritmo, usar o comando abandone Capítulo 1. 31/37

32 Elaboração de algoritmos - Exemplos de algoritmos Elaboração de algoritmos - Exemplos de algoritmos - Problema 1: Dado um vetor x com n componentes (elementos), elaborar um algoritmo para determinar - a média aritmética x e - o desvio padrão s dos seus elementos, sabendo que e n x = 1 n i=1 x i, s = 1 n n 1( i=1 2 1 x i n( n i)2) x. i=1 Capítulo 1. 32/37

33 Elaboração de algoritmos - Exemplos de algoritmos - Algoritmo: Algoritmo Média_desvio { Objetivos: Calcular média aritmética e desvio padrão } parâmetros de entrada: n, x { tamanho e elementos do vetor } parâmetros de saída: Média, DesvioPadrão Soma 0 Soma2 0 para i 1 até n faça Soma Soma + x(i) Soma2 Soma2 + x(i) 2 fim_para Média Soma / n DesvioPadrão raiz 2 ((Soma2 (Soma 2 / n)) / (n-1)) escreva: Média, DesvioPadrão fim_algoritmo Capítulo 1. 33/37

34 Elaboração de algoritmos - Complexidade computacional Elaboração de algoritmos - Complexidade computacional - É usual definir-se uma função de complexidade para medir o custo de execução de um algoritmo. - Esta função tanto pode ser uma medida do - tempo necessário para executar o algoritmo que resolve um problema de tamanho n, - espaço de memória requerido para esta execução. A complexidade computacional de um algoritmo - refere-se à estimativa do esforço computacional despendido para resolver o problema, - é medido pelo número de operações aritméticas e lógicas efetuadas para resolver um sistema linear de ordem n. - Os problemas têm complexidade computacional e podem-se enquadrar em dois grupos: - o composto pelos algoritmos polinomiais, sendo a função de complexidade da forma: O(c n p n + c n-1 p n c 1 p 1 + c 0 ) - o formado pelos algoritmos exponenciais, sendo a função de complexidade da forma: O(c n ), c > 1. - Exemplo: Capítulo 1. 34/37

35 Elaboração de algoritmos - Complexidade computacional - Considere-se o polinómio de Lagrange de grau n definido da seguinte forma: n L n (x) = i=0 n y i j=0 j i x x j x i x j - Expandindo aquela expressão, resulta a Expressão 1: L n (x) = y 0 x x 1 x 0 x 1 x x 2 x 0 x 2... x x n x 0 x n + + y x x 0 x 1 x 0 x x 2 x 1 x 2... x x n x 1 x n + + y n x x 0 x n x 0 x x 1 x n x 1... x x n 1 x n x n 1 Capítulo 1. 35/37

36 Elaboração de algoritmos - Complexidade computacional - Considerando que o número de pontos m usados na interpolação é igual a n+1, onde n é o grau do polinómio, então a complexidade computacional do algoritmo é: m Adições: 2(m 1) + 1 = 2(m 2 2m + m) = 2(n + 1) 2 (n + 1) = 2n 2 + 3n + 1 i=1 m Multiplicações: (m 1) = m 2 m = (n + 1) 2 (n + 1) = n 2 + n i=1 m Divisões: (m 1) = (m 2 m) = (n + 1) 2 (n + 1) = n 2 + n i=1 Estes resultados são resumidos na tabela seguinte: Operações Complexidade Adições 2n 2 + 3n + 1 Multiplicações Divisões n 2 + n n 2 + n Capítulo 1. 36/37

37 Elaboração de algoritmos - Complexidade computacional - O polinómio de Lagrange também pode ser expandido de modo a resultar a Expressão 2: L n (x) = y 0 (x x 1 ) (x x 2 )... (x x n ) (x 0 x 1 ) (x 0 x 2 )... (x 0 x n ) + + y 1 (x x 0 ) (x x 2 )... (x x n ) (x 1 x 0 ) (x 1 x 2 )... (x 1 x n ) y n (x x 0 ) (x x 1 )... (x x n 1 ) (x n x 0 ) (x n x 1 )... (x n x n 1 ) - Analisando a complexidade computacional do algoritmo desta expressão, verifica-se que - o número de adições é o mesmo (2n 2 + 3n + 1), - o de multiplicações é da mesma ordem (n 2 ), - o número de divisões utilizadas na Expressão 2 é de uma ordem grandeza menor (n). - O polinómio de Lagrange serve para exemplificar que - uma mesma notação matemática pode resultar em algoritmos de diferentes complexidades. - Isto deve estar presente ao elaborar-se um algoritmo. Capítulo 1. 37/37

Computação Científica 1

Computação Científica 1 Capítulo 1. 1. Definição A é uma área de estudo que, utilizando computadores, se interessa pela construção de modelos matemáticos e pelas técnicas para determinar soluções numéricas, na análise e resolução

Leia mais

1.1 Etapas na solução de um problema. 1.3 Tipos de erros. 1.4 Aritmética de ponto flutuante.

1.1 Etapas na solução de um problema. 1.3 Tipos de erros. 1.4 Aritmética de ponto flutuante. 1. Computação numérica 1.1 Etapas na solução de um problema. 1.2 Notação algorítmica. 1.3 Tipos de erros. 1.4 Aritmética de ponto flutuante. Algoritmos Numéricos Cap.1: Computaç~ao numérica Ed1.0 c 2001

Leia mais

6.Elaboração de algoritmos...13

6.Elaboração de algoritmos...13 Índice de conteúdos Capítulo 1. Computação Científica...1 1.Definição...1 2.Modelo genérico...2 3.Modelo matemático...2 4.Tipos de modelos matemáticos...3 5.Modelação matemática...5 5.1.Definição (formulação)

Leia mais

A única diferença entre o difícil e o impossível é que o último demora um pouco mais de tempo para ser alcançado..

A única diferença entre o difícil e o impossível é que o último demora um pouco mais de tempo para ser alcançado.. Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Introdução aos Algoritmos A única diferença entre o difícil e o impossível é que o último demora um pouco mais de

Leia mais

BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35

BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35 BCC 201 - Introdução à Programação Portugol Guillermo Cámara-Chávez UFOP 1/35 Introdução I Lógica A lógica é usada no dia a dia das pessoas que trabalham com computação para solucionar problemas de forma

Leia mais

INFORMÁTICA APLICADA AULA 02 ALGORITMOS

INFORMÁTICA APLICADA AULA 02 ALGORITMOS UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 02 ALGORITMOS Profª ª Danielle Casillo ALGORITMOS Um algoritmo é uma sequência de instruções

Leia mais

Programação Procedimental

Programação Procedimental Programação Procedimental Maria Adriana Vidigal de Lima Universidade Federal de Uberlândia - 2013 1 Escrita de Algoritmos 1.1 Técnicas de Programação e Algoritmos Na elaboração de programas maiores e complexos

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

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Expressando a lógica em programação Ferramentas gráficas: diagramas e fluxogramas; Ferramentas textuais: pseudocódigos ou metalinguagens (Português

Leia mais

Noções de algoritmos - Aula 1

Noções de algoritmos - Aula 1 Noções de algoritmos - Aula 1 Departamento de Física UFPel Definição de algoritmo Sequência ordenada e finita de operações para a realização de uma tarefa. Tarefa: Experimento de Física I. Passo 1: Reunir

Leia mais

Algoritmo e Programação. Capítulo 2 Tópicos Preliminares

Algoritmo e Programação. Capítulo 2 Tópicos Preliminares Algoritmo e Programação Capítulo 2 Tópicos Preliminares Tópicos Preliminares Neste capítulo Tipos Primitivos Variáveis Expressões Aritméticas, Lógicas e Relacionais Comandos de Entrada e Saída Blocos Tópicos

Leia mais

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior LÓGICA DE PROGRAMAÇÃO Algoritmos Computacionais Sérgio Carlos Portari Júnior portari.uemgfrutal@gmail.com Tópicos abordados Algoritmos Computacionais Estrutura de Dados Tipos Primitivos Constantes Variáveis

Leia mais

08/05/2012. Tipos de dados. Tipos de dados. Elementos Básicos. Tipos de dados. Elementos Básicos Tipos de dados. Dados e seus tipos:

08/05/2012. Tipos de dados. Tipos de dados. Elementos Básicos. Tipos de dados. Elementos Básicos Tipos de dados. Dados e seus tipos: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DA PARAÍBA CAMPUS CAMPINA GRANDE 1 2 Elementos Básicos Tipos de dados Dados e seus tipos: Computadores lidam com diversos tipos de dados: numéricos,

Leia mais

Introdução aos Algoritmos

Introdução aos Algoritmos Introdução aos Algoritmos Aula 05 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado

Leia mais

ESTRUTURA CONDICIONAL E SELEÇÃO

ESTRUTURA CONDICIONAL E SELEÇÃO Algoritmos e Estruturas de Dados 1 Prof. Eduardo 1 ESTRUTURA CONDICIONAL E SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE OU DECISÃO) Até o momento da disciplina vimos algoritmos e programas

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) Já vimos entrada, processamento e saída, que compõem os algoritmos puramente

Leia mais

Introdução à Programação. João Manuel R. S. Tavares

Introdução à Programação. João Manuel R. S. Tavares Introdução à Programação João Manuel R. S. Tavares Sumário 1. Ciclo de desenvolvimento de um programa; 2. Descrição de algoritmos; 3. Desenvolvimento modular de programas; 4. Estruturas de controlo de

Leia mais

Introdução aos Algoritmos

Introdução aos Algoritmos Introdução aos Algoritmos Aula 05 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado

Leia mais

Introdução a Lógica de Programação

Introdução a Lógica de Programação Introdução a Lógica de Programação O processo de programação é uma conversa controlada entre um ser humano (tecnicamente preparado) e um computador Linguagem Linguagem de baixo nível Grande dificuldade,

Leia mais

- Aula 01, 02, 03 e 04 Apresentação da disciplina.

- Aula 01, 02, 03 e 04 Apresentação da disciplina. 1 - Aula 01, 02, 03 e 04 Apresentação da disciplina. Disciplina: Algoritmos (Disciplina é pré-requisito para outras disciplinas). Plano de Ensino: Estrutura Sequencial, Estrutura de Decisão (Desvio Condicional

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 a programação Visão geral

Introdução a programação Visão geral Instituto Federal de Minas Gerais Campus Ponte Nova Introdução a programação Visão geral Professor: Saulo Henrique Cabral Silva Conceitos lógica/algoritmo A lógica é usada no dia a dia das pessoas para

Leia mais

Programação Estruturada Aula VisualG

Programação Estruturada Aula VisualG Programação Estruturada Aula VisualG Prof. Flávio Barros flavioifma@gmail.com www.flaviobarros.com.br 2 CRIANDO ALGORITMO CRIANDO ALGORITMO Passos para construir Algoritmos Ler enunciado do problema, compreendendo-o

Leia mais

Teoria dos Grafos. Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada.

Teoria dos Grafos. Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada. Teoria dos Grafos Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada antunes@ibilce.unesp.br, socorro@ibilce.unesp.br Grafos e Algoritmos Preparado a partir do texto: Rangel, Socorro.

Leia mais

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Algoritmos Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Etapas para o desenvolvimento de um programa Analise: estudo do problema para determinação dos dados de entrada, do processamento

Leia mais

Engenharia de resolução de problemas

Engenharia de resolução de problemas Engenharia de resolução de problemas O processo de resolução de um problema pode ser visto como uma seqüência de passos que devem ser definidos e aprimorados, até que o modelo escolhido para sua representação

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

Algoritmos Numéricos 2 a edição

Algoritmos Numéricos 2 a edição Algoritmos Numéricos 2 a edição Capítulo 1: Computaç~ao numérica c 2009 FFCf 2 Capítulo 1: Computação numérica 1.1 Etapas na solução de um problema 1.2 Notação algorítmica 1.3 Notação matemática 1.4 Complexidade

Leia mais

ANÁLISE DE COMPLEXIDADE DOS ALGORITMOS

ANÁLISE DE COMPLEXIDADE DOS ALGORITMOS 1/18 ANÁLISE DE COMPLEXIDADE DOS ALGORITMOS Algoritmos 2/18 Algoritmos Algoritmo - sequência de instruções necessárias para a resolução de um problema bem formulado (passíveis de implementação em computador)

Leia mais

Algoritmos - 1. Alexandre Diehl. Departamento de Física - UFPel

Algoritmos - 1. Alexandre Diehl. Departamento de Física - UFPel Algoritmos - 1 Alexandre Diehl Departamento de Física - UFPel Conceitos básicos Computador: conceito clássico (até quando????) HARDWARE (partes físicas) SOFTWARE (programas) SCEF 2 Conceitos básicos Computador:

Leia mais

Algoritmo e Programação Matemática

Algoritmo e Programação Matemática Algoritmo e Programação Matemática Fundamentos de Algoritmos Parte 1 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Dados A funcionalidade principal de um computador

Leia mais

É neste ponto que entra o conceito de lógica de programação.

É neste ponto que entra o conceito de lógica de programação. AULA 01 OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO A lógica é a ciência do pensamento correto. Esta declaração não implica, contudo, em afirmar que ela seja a ciência da verdade.

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

MATRIZES - PARTE Definição e Manipulação de Matrizes AULA 21

MATRIZES - PARTE Definição e Manipulação de Matrizes AULA 21 AULA 21 MATRIZES - PARTE 1 21.1 Definição e Manipulação de Matrizes Sabemos como definir variáveis de um novo tipo de dados, denominado vetor, que representam seqüências de valores de um mesmo tipo. Por

Leia mais

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Algoritmos Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Conceitos Linhas de Código de um Algoritmo ou Programa escrita do programa linha a linha, ou seja, a sintaxe do programa, podendo-se

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

ALGORITMOS AULA 1. Profª Amanda Gondim

ALGORITMOS AULA 1. Profª Amanda Gondim ALGORITMOS AULA 1 Profª Amanda Gondim O que é lógica? NOÇÕES DE LÓGICA A lógica trata da correção do pensamento Ensina-nos a usar corretamente as leis do pensamento É a arte de pensar corretamente A forma

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Program João Manuel R. S. Tavares Sumário 1. Ciclo de desenvolvimento de um programa; 2. Descrição de algoritmos; 3. Desenvolvimento modular de programas; 4. Estruturas de controlo de um programa.

Leia mais

Algoritmos e Programação - Engenharia da Computação -

Algoritmos e Programação - Engenharia da Computação - Algoritmos e Programação - Engenharia da Computação - Prof. Alessandro Zimmer Pseudo Linguagem de Programação - PORTUGOL - Pseudo-Linguagem Linguagem de Programação? Notação formal servindo para: - Expressar

Leia mais

Linguagens de Programação I. Introdução a Algoritmos e Lógica de Programação

Linguagens de Programação I. Introdução a Algoritmos e Lógica de Programação Linguagens de Programação I Introdução a Algoritmos e Lógica de Programação 1 INTRODUÇÃO Que é um programa de computador? Um programa de computador é o produto resultante da atividade intelectual de um

Leia mais

Introdução à Ciência da Computação

Introdução à Ciência da Computação Créditos Introdução à Ciência da Computação Tópicos Preliminares em Programação Exceto por adaptações e complementos menores, o material a seguir é composto de slides gentilmente cedidos por: Prof. Rudinei

Leia mais

VETORES Motivação AULA 19

VETORES Motivação AULA 19 AULA 19 VETORES 19.1 Motivação Considere o problema de calcular a média aritmética das notas de 5 alunos de uma disciplina e determinar e escrever o número de alunos que obtiveram nota superior à média

Leia mais

ALGORITMOS AULA 2. Profª Amanda Gondim

ALGORITMOS AULA 2. Profª Amanda Gondim ALGORITMOS AULA 2 Profª Amanda Gondim LINEARIZAÇÃO DE EXPRESSÕES Para a construção de algoritmos que realizam cálculo matemáticos, todas as expressões aritméticas devem ser linearizadas, ou seja, colocadas

Leia mais

Prof. Jorge Cavalcanti

Prof. Jorge Cavalcanti Universidade Federal do Vale do São Francisco Curso de Engenharia de Computação Introdução a Algoritmos Parte 02 (baseado no material do prof. Marcelo Linder) Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br

Leia mais

Conceitos Básicos de Programação

Conceitos Básicos de Programação BCC 201 - Introdução à Programação Conceitos Básicos de Programação Guillermo Cámara-Chávez UFOP 1/53 Conceitos básicos I Variável 2/53 Conceitos básicos II Posição de memoria, identificada através de

Leia mais

Curso Profissional de Nível Secundário

Curso Profissional de Nível Secundário Curso Profissional de Nível Secundário Técnico Auxiliar de Saúde 2 TAS Ano Letivo: 2014/2015 Matemática (200 horas) 11º Ano PLANIFICAÇÃO A LONGO PRAZO A7 Probabilidades Fenómenos aleatórios. 2 aulas Argumento

Leia mais

Curso: Análise e Desenvolvimento de Sistemas. (Conceitos Práticos de Lógica de Programação)

Curso: Análise e Desenvolvimento de Sistemas. (Conceitos Práticos de Lógica de Programação) Curso: Análise e Desenvolvimento de Sistemas Disciplina Algoritmos e Programação (Conceitos Práticos de Lógica de Programação) Prof. Wagner Santos C. de Jesus wsantoscj@gmail.com Conceito de Algoritmo

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Conjunto de Instruções Slide 1 Sumário Características de Instruções de Máquina Tipos de Operandos Tipos de Operações Linguagem de Montagem Slide 2 Características

Leia mais

Noções de algoritmos - Aula 1

Noções de algoritmos - Aula 1 Noções de algoritmos - Aula 1 Departamento de Física UFPel Definição de algoritmo Sequência ordenada e finita de operações para a realização de uma tarefa. Tarefa: Experimento de Física I. Passo 1: Reunir

Leia mais

Capítulo 1 Conceitos Básicos

Capítulo 1 Conceitos Básicos Capítulo 1 Conceitos Básicos Licenciatura em Computação Fundamentos de Lógica para Programação Prof. Nícolas Trigo nicolas.trigo@ifsertao-pe.edu.br http://professor.ifsertao-pe.edu.br/nicolas.trigo Introdução

Leia mais

Introdução ao SciLab. SciLab O que é? Onde obter o programa:

Introdução ao SciLab. SciLab O que é? Onde obter o programa: Introdução ao SciLab SciLab O que é? SciLab é uma plataforma interativa para computação numérica composta de uma rica coleção de algoritmos numéricos e de uma linguagem de programação associada. CN04 2010

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

ANÁLISE DE ALGORITMOS: PARTE 1. Prof. André Backes. Como resolver um problema no computador? Precisamos descrevê-lo de uma forma clara e precisa

ANÁLISE DE ALGORITMOS: PARTE 1. Prof. André Backes. Como resolver um problema no computador? Precisamos descrevê-lo de uma forma clara e precisa ANÁLISE DE ALGORITMOS: PARTE 1 Prof. André Backes Algoritmos 2 Como resolver um problema no computador? Precisamos descrevê-lo de uma forma clara e precisa Precisamos escrever o seu algoritmo Um algoritmo

Leia mais

Processamento de Dados aplicado à Geociências. AULA 4:Comando de Entrada Comando de Saída Comando de Atribuição

Processamento de Dados aplicado à Geociências. AULA 4:Comando de Entrada Comando de Saída Comando de Atribuição Processamento de Dados aplicado à Geociências 1 AULA 4:Comando de Entrada Comando de Saída Comando de Atribuição UNIVERSIDADE FEDERAL DE PELOTAS CENTRO DE DESENVOLVIMENTO TECNOLÓGICO CURSO SUPERIOR DE

Leia mais

Cálculo Numérico BCC760

Cálculo Numérico BCC760 Cálculo Numérico BCC760 Resolução de Sistemas de Equações Lineares Simultâneas Departamento de Computação Página da disciplina http://www.decom.ufop.br/bcc760/ 1 Introdução! Definição Uma equação é dita

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação. Conceitos básicos de algoritmos Prof. Renato Pimentel. Computação

Universidade Federal de Uberlândia Faculdade de Computação. Conceitos básicos de algoritmos Prof. Renato Pimentel. Computação Universidade Federal de Uberlândia Faculdade de Computação Conceitos básicos de algoritmos Prof. Renato Pimentel 1 Computação Dados Informações vindas de usuários ou de outras máquinas; Processamento transformação

Leia mais

Conceitos e Princípios Gerais

Conceitos e Princípios Gerais Conceitos e Princípios Gerais Conceitos e Princípios Gerais Fases na resolução de problemas físicos Resolução do Modelo Matemático Conceitos Básicos de Cálculo Numérico Erros em Processos Numéricos Fases

Leia mais

Introdução a Computação

Introdução a Computação Introdução a Computação Lógica de Programação Conceitos Algoritmos Conjunto predeterminado e bem definido de regras e processos destinados a solução de um problema, com um número finito de etapas. 2 1

Leia mais

INFORMÁTICA APLICADA AULA 03 ALGORITMOS

INFORMÁTICA APLICADA AULA 03 ALGORITMOS UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 03 ALGORITMOS Profª ª Danielle Casillo LINEARIZAÇÃO DE EXPRESSÕES Para a construção de algoritmos

Leia mais

AULA 02. OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO

AULA 02. OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO AULA 02 OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO A lógica é a ciência do pensamento correto. Esta declaração não implica, contudo em afirmar que ela seja a ciência da verdade.

Leia mais

Cálculo Numérico. que é denominado erro relativo. Temos então para os dados acima:

Cálculo Numérico. que é denominado erro relativo. Temos então para os dados acima: Cálculo Numérico 1 Erros Nenhum resultado obtido através de cálculos eletrônicos ou métodos numéricos tem valor se não tivermos conhecimento e controle sobre os possíveis erros envolvidos no processo.

Leia mais

Faculdade de Estudos Avançados do Pará Disciplina: Algoritmos Professor: Armando Hage. Introdução à Programação

Faculdade de Estudos Avançados do Pará Disciplina: Algoritmos Professor: Armando Hage. Introdução à Programação Faculdade de Estudos Avançados do Pará Disciplina: Algoritmos Professor: Armando Hage Introdução à Programação Construção de Algoritmos Algoritmo é uma seqüência finita de ações que descrevem como um problema

Leia mais

Introdução à Pseudo-código PROGRAMAÇÃO I (COM06842) LÓGICA E TÉCNICA DE PROGRAMAÇÃO (COM06039)

Introdução à Pseudo-código PROGRAMAÇÃO I (COM06842) LÓGICA E TÉCNICA DE PROGRAMAÇÃO (COM06039) Introdução à Pseudo-código PROGRAMAÇÃO I (COM06842) LÓGICA E TÉCNICA DE PROGRAMAÇÃO (COM06039) F REDDY BRASILEIRO www.inf.ufes.br/~fbrasileiro fbrasileiro@inf.ufes.br Conteúdo 4. Elementos fundamentais

Leia mais

Cálculo Numérico Noções básicas sobre erros

Cálculo Numérico Noções básicas sobre erros Cálculo Numérico Noções básicas sobre erros Profa. Vanessa Rolnik 1º semestre 2015 Fases da resolução de problemas através de métodos numéricos Problema real Levantamento de Dados Construção do modelo

Leia mais

Computação I: Representações de Algoritmos

Computação I: Representações de Algoritmos Computação I: Representações de Algoritmos reginaldo.re@utfpr.edu.br * Parte da apresentação foi gentilmente cedida pelo prof. Igor Steinmacher Agenda Objetivos Relembrando... Algoritmos para desenvolver

Leia mais

Introdução aos algoritmos computacionais

Introdução aos algoritmos computacionais CAPíTULO 1 Introdução aos algoritmos computacionais é um procedimento que descreve, sem ambiguidade, uma sequência nita de passos a serem seguidos em uma ordem especíca para resolver um problema ou aproximar

Leia mais

Algoritmos Estrutura Condicional

Algoritmos Estrutura Condicional Algoritmos Estrutura Condicional Aula 06 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado

Leia mais

Conceitos Práticos de Lógica de Programação

Conceitos Práticos de Lógica de Programação Faculdade de Engenharia da Computação Disciplina: Lógica de Programação Conceitos Práticos de Lógica de Programação Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis Wagner Santos C. de Jesus

Leia mais

CAPÍTULO 4 ESTRUTURAS DE CONTROLE

CAPÍTULO 4 ESTRUTURAS DE CONTROLE CAPÍTULO 4 ESTRUTURAS DE CONTROLE Fabio Augusto Oliveira Guilherme da Cunha Fonseca FEPI Centro Universitário de Itajubá Curso de Engenharia de Produção 1 INTRODUÇÃO Já vimos entrada, processamento e saída,

Leia mais

Curso Profissional de Gestão e Programação de Sistemas Informáticos. Programação e Sistemas de Informação. Módulo 1. 2ª Parte Prof. Sandra Pais Soares

Curso Profissional de Gestão e Programação de Sistemas Informáticos. Programação e Sistemas de Informação. Módulo 1. 2ª Parte Prof. Sandra Pais Soares Curso Profissional de Gestão e Programação de Sistemas Informáticos Programação e Sistemas de Informação Módulo 1 2ª Parte Prof. Sandra Pais Soares Introdução à Lógica de Programação A elaboração de um

Leia mais

2. Complexidade de Algoritmos

2. Complexidade de Algoritmos Introdução à Computação II 5952011 2. Complexidade de Algoritmos Prof. Renato Tinós Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 2.1. Introdução 2.1.1. Revisão de Pseudo-Código 2.1.2.

Leia mais

Estruturas de Dados Algoritmos

Estruturas de Dados Algoritmos Estruturas de Dados Algoritmos Prof. Eduardo Alchieri Algoritmos (definição) Sequência finita de instruções para executar uma tarefa Bem definidas e não ambíguas Executáveis com uma quantidade de esforço

Leia mais

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br

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

LINGUAGEM ALGORÍTMICA

LINGUAGEM ALGORÍTMICA LINGUAGEM ALGORÍTMICA Adriano Mauro Cansian André Proto UNESP - São José do Rio Preto Linguagem Computacional Introdução! Para uma melhor padronização de nosso estudos, vamos agora definir uma linguagem

Leia mais

Técnicas de Programação

Técnicas de Programação Técnicas de Programação Algoritmos Anderson Gomes Eleutério Lógica A lógica de programação é necessária para pessoas que desejam trabalhar com desenvolvimento de sistemas e programas, ela permite definir

Leia mais

Fluxograma. Conjunto de símbolos utilizados em fluxogramas

Fluxograma. Conjunto de símbolos utilizados em fluxogramas 27 Símbolo Nome Terminador Seta de fluxo Entrada de dados Atribuição Saída de dados Desvio condicional Declaração Fluxograma Descrição Indica o início e o fim do fluxo do algoritmo. Indica o sentido do

Leia mais

Aula 10: Introdução a Vetores e Matrizes

Aula 10: Introdução a Vetores e Matrizes Aula 10: Introdução a Vetores e Matrizes Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Vetores e Matrizes Programação de Computadores IV 1 / 50 Agenda

Leia mais

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO PRÉ AULA DIAGNÓSTICO 22/10/2015. Analise o algoritmo a seguir e depois assinale a alternativa correspondente:

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO PRÉ AULA DIAGNÓSTICO 22/10/2015. Analise o algoritmo a seguir e depois assinale a alternativa correspondente: ALGORITMOS E LÓGICA DE PROGRAMAÇÃO Prof. Esp. Fabiano Taguchi http://fabianotaguchi.wordpress.com fabianotaguchi@gmail.com PRÉ AULA Julgue as afirmações enumeradas a seguir em verdadeiras (V) ou falsas

Leia mais

Conceitos básicos de algoritmos

Conceitos básicos de algoritmos Conceitos básicos de algoritmos Operadores Aritméticos Unários: +, - Exemplos: +1-5.9... var a: inteiro... a

Leia mais

Programação Estruturada

Programação Estruturada Algoritmos e Técnicas - Estruturas de Controle de Fluxo - Programação Estruturada Programação estruturada é a técnica de construir e formular algoritmos de uma forma sistemática. Utilizada para apresentar

Leia mais

Exercícios de programação

Exercícios de programação Exercícios de programação Estes exercícios serão propostos durante as aulas sobre o Mathematica. Caso você use outra linguagem para os exercícios e problemas do curso de estatística, resolva estes problemas,

Leia mais

Conceitos Básicos de Algoritmos

Conceitos Básicos de Algoritmos Conceitos Básicos de Algoritmos 35 TIPOS PRIMITIVOS Palavra-reservada: inteiro - define variáveis numéricas do tipo inteiro, ou seja, sem casas decimais Palavra-reservada: real - define variáveis numéricas

Leia mais

Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas

Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas Estrutura de um Programa em Linguagem Algorítmica Nesse curso nós vamos utilizar a linguagem algorítmica para

Leia mais

2. Algoritmos. Prof. Renato Tinós. Local: Depto. de Computação e Matemática (FFCLRP/USP) Introdução à Computação I IBM1006

2. Algoritmos. Prof. Renato Tinós. Local: Depto. de Computação e Matemática (FFCLRP/USP) Introdução à Computação I IBM1006 Introdução à Computação I IBM1006 2. Algoritmos Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 2. Algoritmos 2.1. Introdução 2.2. Pseudo-código 2.3. Fluxograma

Leia mais

MATRIZES - PARTE Mais exemplos Multiplicação de duas matrizes AULA 26

MATRIZES - PARTE Mais exemplos Multiplicação de duas matrizes AULA 26 AULA 26 MATRIZES - PARTE 2 26. Mais exemplos Nesta aula, veremos mais dois algoritmos envolvendo matrizes. O primeiro deles calcula a matriz resultante da multiplicação de duas matrizes e utiliza três

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 4 09/2014 Zeros reais de funções Parte 1 Objetivo Determinar valores aproimados para as soluções (raízes) de equações da forma:

Leia mais

Sistemas Operacionais e Introdução à Programação. Introdução à Lógica de Programação: estruturas de repetição

Sistemas Operacionais e Introdução à Programação. Introdução à Lógica de Programação: estruturas de repetição Sistemas Operacionais e Introdução à Programação Introdução à Lógica de Programação: estruturas de repetição 1 Imagine um algoritmo para calcular a média de uma quantidade desconhecida de números Para

Leia mais

Matemática computacional: métodos numéricos, programação linear, otimização

Matemática computacional: métodos numéricos, programação linear, otimização Matemática computacional: métodos numéricos, programação linear, otimização Ricardo Terra rterrabh [at] gmail.com Ricardo Terra (rterrabh [at] gmail.com) Matemática computacional Fevereiro, 2013 1 / 46

Leia mais

Preliminares. Profa. Sheila Morais de Almeida. agosto

Preliminares. Profa. Sheila Morais de Almeida. agosto Preliminares Profa. Sheila Morais de Almeida DAINF-UTFPR-PG agosto - 2016 Algoritmos Definição - Skiena Algoritmo é a ideia por trás dos programas de computador. É aquilo que permanece igual se o programa

Leia mais

TIPOS DE DADOS E VARIÁVEIS

TIPOS DE DADOS E VARIÁVEIS AULA 3 TIPOS DE DADOS E VARIÁVEIS 3.1 Tipos de dados Os dados manipulados por um algoritmo podem possuir natureza distinta, isto é, podem ser números, letras, frases, etc. Dependendo da natureza de um

Leia mais

Cálculo Numérico. que é denominado erro relativo. Temos então para os dados acima:

Cálculo Numérico. que é denominado erro relativo. Temos então para os dados acima: Cálculo Numérico 1 Erros Nenhum resultado obtido através de cálculos eletrônicos ou métodos numéricos tem valor se não tivermos conhecimento e controle sobre os possíveis erros envolvidos no processo.

Leia mais

INF1005: Programação I. Capítulo 2. Ivan Mathias Filho Algoritmo

INF1005: Programação I. Capítulo 2. Ivan Mathias Filho Algoritmo INF1005: Programação I Capítulo 2 Ivan Mathias Filho ivan@inf.puc-rio.br 1 Algoritmo Devido às características da CPU, a solução de um problema tem a forma de uma seqüência finita de instruções elementares;

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

Análise de Algoritmos Estrutura de Dados II

Análise de Algoritmos Estrutura de Dados II Centro de Ciências Exatas, Naturais e de Saúde Departamento de Computação Análise de Algoritmos Estrutura de Dados II COM10078 - Estrutura de Dados II Prof. Marcelo Otone Aguiar marcelo.aguiar@ufes.br

Leia mais

EXPRESSÕES ARITMÉTICAS PARTE 1

EXPRESSÕES ARITMÉTICAS PARTE 1 AULA 5 EXPRESSÕES ARITMÉTICAS PARTE 1 5.1 Operadores aritméticos Os operadores aritméticos definem as operações aritméticas que podem ser realizadas sobre os números inteiros e reais. Para os inteiros,

Leia mais

SEBENTA INTRODUÇÃO Á ALGORITMIA

SEBENTA INTRODUÇÃO Á ALGORITMIA SEBENTA INTRODUÇÃO Á ALGORITMIA O desenvolvimento de programas para computador está sempre baseado na tarefa de programar um computador para seja resolvido um problema ou executada uma função e assim dar

Leia mais