A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Algoritmos e Estruturas de Dados I - Introdução

Apresentações semelhantes


Apresentação em tema: "Algoritmos e Estruturas de Dados I - Introdução"— Transcrição da apresentação:

1 Algoritmos e Estruturas de Dados I - Introdução
Profa. Mercedes Gonzales Márquez

2 Conceitos Básicos Computadores – máquinas capazes de solucionar problemas, mas que só agem quando recebem instruções nos mínimos detalhes. A tarefa principal dos computadores é o processamento de dados, ou seja, receber dados (entrada), realizar operações (processamento propriamente dito) e gerar uma resposta (saída).

3 Estrutura de um computador
Conceitos Básicos Estrutura de um computador MEMÓRIA UNIDADE DE ENTRADA UNIDADE DE SAIDA UNIDADE DE CONTROLE UNIDADE LÓGICA E ARITMÉTICA Unidade Central de Processamento (UCP)

4 Conceitos básicos Unidade de entrada – Traduz informação de um dispositivo de entrada em um código que a UCP entende (padrões de pulsos elétricos compreensíveis ao computador). Unidade de saída – converte os dados processados, de pulsos elétricos em palavras ou números que podem ser escritos em vídeos ou outros dispositivos de saída. Exemplos ue: Teclado drive de CD / DVD-ROM, pen drive.

5 Conceitos básicos Exemplos de us Vídeo Impressora
joystick, câmera filmadora, câmera digital, tela sensível ao toque, mesa gráfica, caneta ótica, etc. Exemplos de us Vídeo Impressora drive de CD/DVD-ROM, pen drive caixa de som, etc.

6 Conceitos básicos Memória – armazena os dados e o próprio programa. Número finito de localizações que são identificadas por meio de um único endereço. Unidade lógica e aritmética – faz cálculos aritméticos e qualquer manipulação de dados (numéricos ou não) Unidade de controle – Responsável pelo “tráfico” de dados.

7 Algoritmos - Conceito Sequência de passos que visa atingir um objetivo bem definido. Um algoritmo é um conjunto finito de regras que fornece uma sequencia precisa de operações para resolver um problema específico. Descrição de um conjunto de comandos que, obedecidos, resultam numa sucessão finita de ações.

8 Algoritmos – exemplos da vida quotidiana
Instruções para se utilizar um aparelho eletrodoméstico. Uma receita para preparo de algum prato. O guia de preenchimento da declaração de imposto de renda. A regra para determinação de máximos e mínimos de funções por derivadas sucessivas. A maneira como as contas de água, luz e telefone são calculadas mensalmente.

9 Algoritmos - exemplo prático
Algoritmo – Fazer um bolo 1) Bater duas claras ; 2) Adicionar duas gemas; 3) Adicionar um xícara de açúcar; 4) Adicionar duas colheres de manteiga; 5) Adicionar uma xícara de leite de coco; 6) Adicionar farinha e fermento; 7) Colocar numa forma e levar ao forno em lume brando

10 Algoritmos – Método de Construção
entender o problema; definir os dados de entrada; definir o processamento; definir os dados de saída; construir o algoritmo usando descrição narrativa, fluxograma ou pseudocódigo; realizar testes.

11 Algoritmos - Características
Finitude: algoritmos devem terminar após um número finito de passos; Definição: cada passo deve ser precisamente definido Entradas: devem ter zero ou mais entradas Saídas: devem ter uma ou mais saídas; Efetividade: todas as operações devem ser simples de modo que possam ser executadas em um tempo limitado.

12 Algoritmos - Dificuldades
Difícil para iniciantes saber o que o computador pode ou não fazer Criação de algoritmos é um processo não automático e tem muito de arte Pode haver mais de uma solução para um problema.

13 Algoritmos – exemplo 1 Calcular a área de um retângulo.
Dados de entrada base e altura Processamento (cálculo) Área do retângulo = base x altura Dados de saída Área do retângulo

14 Algoritmos – exemplo 2 Calcular a média ponderada de um aluno e verificar a sua aprovação em relação a uma média pré-definida para aprovação. n notas e n pesos devem ser considerados. Dados de entrada notas e pesos correspondentes, média para aprovação Processamento (cálculo) Média do aluno = [(N1 x P1) + (N2 x P2) (Nn x Pn)] / (P1 + P Pn) Se média do aluno for maior ou igual à média para aprovação, aluno aprovado. Caso contrário, aluno reprovado. Dados de saída Média do aluno, aprovação

15 Algoritmos – exemplo 3 Escreva os termos da sequência de Fibonacci inferiores a L. Dados de entrada O número L Processamento (cálculo) Atribua 1 ao primeiro termo. Se 1 for menor que L escreva-o. Atribua 1 ao segundo termo. Se 1 for for menor que L escreva-o. Some primeiro e segundo termo e escreva. enquanto a soma for menor que L, atualize o primeiro e segundo termo e repita o último passo Dados de saída Todos os termos inferiores a L.

16 Algoritmos - Representação
Linguagem natural ou descrição narrativa: Algoritmos expressos diretamente em linguagem natural como as receitas. Fluxograma: representação gráfica Pseudo-código (pseudo-linguagem): linguagem intermediária entre linguagem natural e linguagem de programação.

17 Algoritmos - Representação
Descrição narrativa Escrever, usando linguagem natural, os passos a serem seguidos para a solução. Vantagens – a linguagem natural já é bastante conhecida. Não é necessário aprender nenhum conceito novo. Desvantagens – possibilidades de várias interpretações, gerando dificuldade na codificação.

18 Algoritmos – Representação
Exemplo 1 – Descrição narrativa Passo 1 – Ingressar largura do retângulo Passo 2 – Ingressar altura do retângulo Passo 3 – Multiplicar a largura pela altura Passo 4 – Mostrar o resultado da multiplicação

19 Algoritmos – Representação
Exemplo 2 – Descrição narrativa Passo 1 – Ingressar pesos Pi e notas Ni Passo 2 – Ingressar media referência MF Passo 3 – Calcular a média ponderada usando MA = [(N1 x P1) + (N2 x P2) (Nn x Pn)] / (P1 + P Pn) Passo 4 – Se MA>=MF COND=Aprovado senão COND=Reprovado Passo 5 – Mostrar MA e COND

20 Algoritmos - Representação
Fluxograma Descrição dos passos para a resolução do problema utilizando símbolos gráficos definidos previamente. Vantagens – entendimento mais fácil do que a leitura de textos. Desvantagens – necessidade de aprender a simbologia. Poucos detalhes, dificultando a codificação.

21 Algoritmos – Representação
Fluxograma – símbolos utilizados Início e fim do algoritmo Sentido do fluxo de dados Cálculos e atribuição de valores Entrada de dados Saída de dados Tomada de decisão

22 Algoritmos - Representação
Exemplo 1 – Fluxograma Início b, h A = b * h A Fim

23 Algoritmos - Representação
Exemplo 2 – Fluxograma Início n,pi,Ni,MR MA = [(N1 x P1) + (N2 x P2) (Nn x Pn)] / (P1 + P Pn) F MA>=MR V Cond=R Cond=A A Fim MA, Cond

24 Algoritmos - Representação
Exemplo 2 – Fluxograma – Maior detalhe Cont<=n F Início n, MR Cont=1 V P(cont),N(cont) Cont=cont+1 MA = [(N(1) x P(1) + N(2) x P(2) (N(n) x P(n)] / (P1 + P Pn) F Cond=R MA>=MR V Cond=A MA, Cond Fim

25 Algoritmos - Representação
Exemplo 3 – Fluxograma – T1<L F Início L T1=1, T2=1 V T1,T2 Fib=T1+T2 F Fib<L Fim V Fib T1=T2 T2=Fib

26 Algoritmos - Representação
Pseudocódigo (portugol) Descrição dos passos a serem seguidos através de regras definidas previamente. Vantagens – codificação mais rápida. Desvantagens – necessidade de aprender o pseudocódigo.

27 Algoritmos - Representação
Exemplo 1 – Pseudocódigo ALGORITMO Inicio escreva “Informe a largura do retângulo” leia b escreva “Informe a altura do retângulo” leia h a <- b * h escreva “Área = ”, a Fim

28 Algoritmos - Representação
Exemplo 2 – Pseudocódigo ALGORITMO Inicio escreva “Informe o número de notas” leia n escreva “Informe Média de referência” Leia MF Contador<-1 Somaproduto<-0, somapesos<-0 Enquanto contador<=n escreva “Informe nota(contador)” leia n(contador) escreva “Informe peso(contador)” leia p(contador) somaproduto<- p(contador)*n(contador)+somaproduto somapesos<- p(contador)+somapesos contador<-contador+1

29 Algoritmos - Representação
Exemplo 2 – Pseudocódigo MA<-somaproduto/somapesos Se MA>=MF então Cond<-“Aprovado“ Senão Cond<-“Reprovado“ escreva MA, Cond Fim

30 Algoritmos - Representação
Exemplo 3 – Pseudocódigo ALGORITMO Início Leia L T1<-1, T2<-1 Se (T1<L) então escreva (T1,T2) Fib<-T1+T2 Enquanto (Fib<L) faça escreva Fib T1<-T2 T2<-Fib Fim enquanto Fim se Fim


Carregar ppt "Algoritmos e Estruturas de Dados I - Introdução"

Apresentações semelhantes


Anúncios Google