• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Algoritmos - Formas de Representação de Algoritmos
 

Algoritmos - Formas de Representação de Algoritmos

on

  • 1,846 views

Algoritmos - Formas de Representação de Algoritmos

Algoritmos - Formas de Representação de Algoritmos

Statistics

Views

Total Views
1,846
Views on SlideShare
1,846
Embed Views
0

Actions

Likes
1
Downloads
43
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Algoritmos - Formas de Representação de Algoritmos Algoritmos - Formas de Representação de Algoritmos Presentation Transcript

    • Formas de Representação de Algoritmos Prof.ª Ms. Eng.ª Elaine Cecília Gatto Algoritmos e Estruturas de Dados Engenharia de Computação Universidade Sagrado Coração
    • Introdução • Existem diversas formas de representação de algoritmos, mas não há um consenso com relação à melhor delas. • Algumas formas de representação de algoritmos tratam os problemas apenas em nível lógico, abstraindo-se de detalhes de implementação muitas vezes relacionados com alguma linguagem de programação específica. • Por outro lado existem formas de representação de algoritmos que possuem uma maior riqueza de detalhes e muitas vezes acabam por obscurecer as idéias principais do algoritmo, dificultando seu entendimento.
    • Introdução • Dentre as formas de representação de algoritmos mais conhecidas podemos citar: • Descrição Narrativa; • Fluxograma Convencional; • Pseudocódigo, também Estruturada ou Portugol. conhecido como Linguagem
    • Narração Descritiva • Nesta forma de representação os algoritmos são expressos diretamente em linguagem natural. Exemplo de uma receita de bolo: • • • • • • • • • • Misture os ingredientes Unte a forma com manteiga Despeje a mistura na forma Se houver coco ralado então despeje sobre a mistura Leve a forma ao forno Enquanto não corar deixe a forma no forno Retire do forno Deixe esfriar
    • Narração Descritiva • Exemplo de um pneu furado: • • • • • • • • Troca de um pneu furado: Afrouxar ligeiramente as porcas Suspender o carro Retirar as porcas e o pneu Colocar o pneu reserva Apertar as porcas Abaixar o carro Dar o aperto final nas porcas
    • Narração Descritiva • Exemplo do cálculo da média de um aluno: • • • • • • Cálculo da média de um aluno: Obter as suas 2 notas de provas Calcular a média aritmética Se a média for maior que 7, o aluno foi aprovado, senão ele foi reprovado
    • Narração Descritiva • Esta representação é pouco usada na prática porque o uso da linguagem natural muitas vezes dá oportunidade a más interpretações, ambigüidades e imprecisões. • Por exemplo, a instrução "afrouxar ligeiramente as porcas" no algoritmo da troca de pneus está sujeita a interpretações diferentes por pessoas distintas. • Uma instrução mais precisa seria: "afrouxar a porca, girando-a 30º no sentido anti-horário".
    • Fluxograma • É uma representação gráfica de algoritmos onde formas geométricas diferentes implicam ações (instruções, comandos) distintos. • Tal propriedade facilita o entendimento das idéias contidas nos algoritmos e justifica sua popularidade. • Esta forma é aproximadamente intermediária à descrição narrativa e ao pseudocódigo (subitem seguinte), pois é menos imprecisa que a primeira e, no entanto, não se preocupa com detalhes de implementação do programa. • Nota-se que os fluxogramas convencionais preocupam-se com detalhes de nível físico da implementação do algoritmo. • Por exemplo, figuras geométricas diferentes são adotadas para representar operações de saída de dados realizadas em dispositivos distintos, como uma fita magnética ou um monitor de vídeo.
    • Fluxograma • O pacote office possui os símbolos do fluxograma. Na aba INSERT, na parte ILLUSTRATIONS, existe o botão SHAPES. Na setinha aparecem os símbolos de desenho, entre eles o FLOWCHART, ou FLUXOGRAMA.
    • Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Process ou Processo Representa todo tipo de ação (em Matemática seriam as Operações Aritméticas e Lógicas, a Atribuição, etc). Process Alternate ou Processo Alternativo Raramente utilizado, indica uma forma diferente de se fazer o mesmo processo. Decision ou Decisão Uma ação que é efetuada de acordo com uma condição. Exemplo: Se o aluno tirou nota 7, então ele está aprovado, caso contrário, está reprovado. Data ou Dados Representa o símbolo de dados, entrada e saída simultaneamente. Predefined Process ou Processo PréDefinido Raramente utilizado. Processo já conhecido que será aplicado ao fluxo.
    • Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Document ou Documento Símbolo utilizado para indicar a criação de um documento. Multi-Document ou Múltiplos Documentos Símbolo utilizado para indicar a criação de vários documentos. Terminator ou Terminador Utilizado para inicar e terminar o fluxograma Preparation ou Preparação Raramente utilizado. Manual Input ou Entrada Manual Corresponde à instrução de entrada de dados através do teclado. Atualmente é considerado o símbolo para qualquer entrada de dados.
    • Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Manual Operation Raramente utilizado. Corresponde à operação ou Operação Manual manual de algum processo. Connector ou Conector Raramente utilizado. Off-Page Connector ou Conector Fora de Página Raramente utilizado. Card ou Cartão Símbolo que corresponde ao cartão perfurado, que não é mais utilizado atualmente. Punched Tape ou Fita Símbolo que corrresponde à fita perfurada, que Perfurada não é mais utilizada atualmente.
    • Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Summing Junction ou Tem a função da tabela verdade E. Somador OR – OU Collate ou Agrupamento Sort ou Classificação Seta de Fluxo Tem a função da tabela verdade OU. Símbolo utilizado para agrupar dados. Símbolo utilizado para classificar os dados, por exemplo, em ordem alfabética Indica para onde está indo a informação
    • Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Internal Storage ou Armazenamento Interno Raramente utilizado. Símbolo que representa o armazenamento em memória. Extract ou Extração Símbolo utilizado para extração de dados. Em banco de dados, através de comandos SQL, conseguir extrair algumas informações, até então tidas como desconexas, da base de dados. Merge ou Mesclar Símbolo utilizado para mesclar os dados. No excel, esse “comando” transforma duas colunas em uma. Stored Data ou Dados Armazenados Delay ou Atraso Referente aos dados que estão guardados. Referente à tempo de atraso. Por exemplo, quanto tempo o resultado de uma conta, vai ficar aparecendo na tela?
    • Fluxograma SÍMBOLO FUNÇÃO DESCRIÇÃO Sequential Storage Access ou Armazenamento de Acesso Sequencial Símbolo para armazenamento de dados de forma sequencial, significa que os dados serão acessados na ordem na qual foram armazenados. Magnetic Disk ou Disco Magnético Símbolo para armazenamento de dados, no caso o disco rígido (HD) Símbolo para armazenamento de dados direto, Direct Access Storage significa que os dados podem ser recuperados ou Armazenamento diretamente sem passar por outros dados na de Acesso Direto seqüência. Display ou Exibição É considerado também o símbolo para SAÍDA de dados, como uma impressora ou monitor.
    • Exemplos • Exemplo 1: • Desenvolva uma solução para o problema a seguir utilizando as formas de representação “descrição narrativa”, “fluxograma” e “algoritmo” para demonstrar o seu raciocínio. • Problema: O software (ou programa) a ser desenvolvido deve solicitar ao usuário dois números do tipo real. O usuário deve digitar esses números. Em seguida, o programa deve somar esses números e apresentar o resultado na tela.
    • Exemplos • Exemplo 1: • Solução: • Descrição narrativa: • Apresentar na tela uma mensagem para o usuário, informando-o que deverá digitar dois números do tipo real. • Após ler a mensagem, o usuário deverá inserir os números, através do teclado, que serão lidos e armazenados em duas variáveis diferentes; • Em seguida, será aplicada a operação de soma nos dois operandos, isto é, nos dois números que foram inseridos pelo usuário, sendo o resultado armazendo em uma terceira variável; • O resultado será então apresentado na tela para o usuário por um período de tempo, finalizando assim o programa.
    • Fluxograma • Exemplo 1: • Solução: • Fluxograma: INÍCIO “Digite dois números do tipo real” Leia X Leia Y Z=X+Y FIM 30 segundos “O resultado da soma entre X e Y é Z”
    • Fluxograma • Exemplo 1: • Solução: • Algoritmo: 1. Início do algoritmo; 2. Apresentar na tela a seguinte mensagem para o usuário: “Digite dois números do tipo real”; 3. Ler o número X e ler o número Y; 4. Somar o número X com o número Y; 5. Colocar o resultado em Z; 6. Apresentar na tela a seguinte mensagem para o usuário: “A soma entre os números X, ‘X’, e Y, ‘Y’, é Z, ‘Z’ ”. 7. Manter a mensagem na tela por 30 segundos. 8. Fim do algoritmo
    • Exemplos • Exemplo 2: • Desenvolva uma solução para o problema a seguir utilizando as formas de representação “descrição narrativa”, “fluxograma” e “algoritmo” para demonstrar o seu raciocínio. • Problema: O software (ou programa) a ser desenvolvido deve solicitar que o usuário digite as quatro notas que obteve em suas quatro provas. O usuário deve digitar esses números que são do tipo real. Em seguida, o programa deve fazer a média desses números e apresentar o resultado na tela.
    • Exemplos • Exemplo 2: • Solução: • Descrição narrativa: • Apresentar na tela uma mensagem para o usuário, informando-o que deverá digitar os valores das notas das quatro provas que realizou. • Após ler a mensagem, o usuário deverá inserir os números, através do teclado, que serão lidos e armazenados em quatro variáveis diferentes; • Em seguida, será aplicada duas operações; • uma que soma os quatro operandos e armazena o resultado em uma variável SOMA; • outra que divide o resultado da SOMA pelo valor 4 (quatro) e armazena o resultado da variável em MÉDIA; • O resultado, MÉDIA, será então apresentado na tela para o usuário por um período de tempo, finalizando assim o programa.
    • Fluxograma • Exemplo 2: • Solução: • Fluxograma: INÍCIO “Digite os valores das quatro provas” Leia X, Y, Z, W SOMA = X + Y + Z + W MÉDIA = SOMA / 4 FIM 30 segundos “A nota final do aluno é: , MÉDIA”
    • Fluxograma • Exemplo 2: • Solução: • Algoritmo: 1. Início do algoritmo; 2. Apresentar na tela a seguinte mensagem para o usuário: “Digite as quatro notas das provas (tipo real)”; 3. Ler os números X, Y, Z e W; 4. Somar os números X, Y, Z e W; 5. Colocar o resultado em SOMA; 6. Dividir a SOMA por 4; 7. Colocar o resultado em MÉDIA; 8. Apresentar na tela a seguinte mensagem para o usuário: “A média final do aluno é: , MÉDIA”; 9. Manter a mensagem na tela por 30 segundos; 10. Fim do algoritmo.
    • Exercícios • Faça uma descrição narrativa, um fluxograma e também um algoritmo para as seguintes situações: 1. Levantar da Cama; 2. Lavar Roupa; 3. Trocar um Pneu Furado; 4. Trocar uma Lâmpada; 5. Ir para a Balada; 6. Obedecer os Pais; 7. Lavar a louça; 8. Assistir um filme em DVD; 9. Fazer um bolo recheado; 10. Fazer uma ligação pelo celular;