Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
1 AULA 1 Algoritmos 1 Algoritmos Introdução aos algoritmos Definição Para que serve e onde utilizamos algoritmos Características Formas de representação de algoritmos 2 Termos de algoritmos 3 passos lógica estruturado não ambíguo interpretação ter fim representação solução Definição Um conjunto finito e não ambíguo de passos que levam à resolução de um problema Exemplos: receita de bolo, manual de instalação de equipamentos Nos exemplos acima, quem é o “computador”? Quem é o “software”? Software é a implementação de um ou mais algoritmos para resolução de problemas utilizando um computador 4 Pra que servem os algoritmos? Elaboração de soluções Software Hardware Redes Documentação 5 Algoritmos Características dos algoritmos Ter fim Não possuir ambigüidade Capacidade de receber dados de entrada do mundo exterior Poder gerar informações de saída Ser efetivo, ou seja, todas as etapas devem ser resolvidas em tempo finito. Conjunto finito de passos Algoritmos Características dos algoritmos Ter fim Não possuir ambigüidade Capacidade de receber dados de entrada do mundo exterior Poder gerar informações de saída Ser efetivo, ou seja, todas as etapas devem ser resolvidas em tempo finito. Cada passo deve ser bem definido, sem deixar dúvidas! Algoritmos Características dos algoritmos Ter fim Não possuir ambigüidade Capacidade de receber dados de entrada do mundo exterior Poder gerar informações de saída Ser efetivo, ou seja, todas as etapas devem ser resolvidas em tempo finito. Entrada de Dados pra serem processados Algoritmos Características dos algoritmos Ter fim Não possuir ambigüidade Capacidade de receber dados de entrada do mundo exterior Poder gerar informações de saída Ser efetivo, ou seja, todas as etapas devem ser resolvidas em tempo finito. Fornecer os resultados do processamento Algoritmos Características dos algoritmos Ter fim Não possuir ambigüidade Capacidade de receber dados de entrada do mundo exterior Poder gerar informações de saída Ser efetivo Deve executar em tempo hábil Formas de Representação Existem basicamente três formas de se representar algoritmos Descrição narrativa Linguagem natural Pseudocódigo Linguagem algorítmica Fluxograma Diagrama de Chapin Descrição narrativa Utiliza a linguagem natural Exemplo: Algoritmo (receita de bolo): 1) Bater duas claras em castelo; 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 12 Descrição narrativa Utiliza a linguagem natural Vantagens É a linguagem conhecida por nós Desvantagens Imprecisão; Pouca confiabilidade (a imprecisão acarreta a desconfiança); Extensão Pseudocódigo Tipo de algoritmo que utiliza linguagem flexível Linguagem natural simplificada com símbolos; Significa falso código; Muito utilizado para iniciar um algoritmo e para organizar um raciocínio; 14 Pseudocódigo Exemplo: 15 algoritmo “exercício 1” var n1, n2, n3: inteiro inicio escreva (“Digite o multiplicando inteiro: ”); leia (n1); escreva (“Digite o multiplicador inteiro: ”); leia (n2); n3 <- (n1 * n2); escreva (“Resultado da multiplicação: ”, n3); Fim; Pseudocódigo Linguagem Algorítmica Pseudocódigo Linguagem Algorítmica Vantagens Pode-se definir quais e como os dados vão estar estruturados; Passagem quase imediata do algoritmo para uma linguagem de programação qualquer. Linguagem formal (evita ambiguidades) Desvantagens Não é padronizado Fluxograma 18 Processamento Decisão Início/Fim Saída Entrada Conector Orientação Saída de vídeo Conector de páginas Fluxograma 19 dobro <- num * 2 Início Leia num exiba dobro Fim Início do algoritmo Entrada de um número Cálculo do dobro do número Apresentação do resultado Fim do algoritmo Fluxograma Fluxograma Vantagens Forma conhecida e padronizada de representar algoritmos Imagens são fáceis de entender Desvantagens Torna-se complexo com o aumento do tamanho dos algoritmos Não apresenta recursos para descrever e representar os dados Formas de Representação Fluxograma Diagrama de Chapin [obs: não vamos utilizá-lo] 22 Exercícios Suponha que temos um robô a nossa disposição e esse robô precisa ser ensinado a fazer determinadas tarefas. Escreva, em linguagem narrativa os passos necessários para o nosso robô executar: A troca de uma lâmpada no teto de sua casa; O cálculo da sua idade daqui a 20 anos; O cálculo da média de um aluno com 3 notas. Exercícios Utilizando fluxogramas, especifique soluções em termos das operações básicas do nosso computador para os seguintes itens : Calcular a sua idade daqui a 20 anos; Calcular a média de um aluno com 3 notas.