Baixe o app para aproveitar ainda mais
Prévia do material em texto
ALGORITMOS E PROGRAMAÇÃO A lógica e os Algoritmos Prof.ª M.ª Ione Ferrarini Goulart Algoritmo é uma sequência finita de passos que levam a execução de uma tarefa. Que levam a resolução de determinado problema. ALGORITMO - CONCEITO Outro conceito (SALVETTI / BARBOSA): “Um algoritmo, intuitivamente, é uma sequência finita de instruções ou operações básicas (operações definidas sem ambiguidade e executáveis em tempo finito dispondo-se apenas de lápis e papel) cuja execução, em tempo finito, resolve um problema computacional.” ALGORITMO - CONCEITO RACIOCÍNIO LÓGICO O raciocínio lógico é utilizado pelo homem desde os primórdios para realizar suas atividades. É estabelecida sequências adequadas de passos para realização de suas tarefas com sucesso. RACIOCÍNIO LÓGICO • Chupar bala: • Comprar a bala; • Descascar a bala; • Chupar a bala; • Jogar o papel no lixo. RACIOCÍNIO LÓGICO • Tomar banho de chuveiro: • Tirar a roupa; • Ligar a água; • Molhar-se; • Ensaboar-se; • Enxaguar-se; • Fechar a água; • Banho tomado. ALGORITMOS NO DIA-A-DIA As pessoas usam algoritmos de maneira intuitiva, sem que haja necessidade de planejar previamente a sequência de passos para a resolução de tarefas cotidianas. Seja uma dona de casa que prepara um bolo. Ela segue uma receita, que nada mais é do que um algoritmo onde cada instrução é um passo a ser seguido para que o bolo fique pronto com sucesso. • Receitas; • Instruções de Montagem; • Manuais; • Construção de Hardware e Software; • Etc. Observação: Algoritmo não é a solução do problema, pois, se assim fosse, cada problema teria um único algoritmo. Algoritmo é um caminho para a solução de um problema. Em geral, existem muitos (senão infinitos) caminhos que levam a uma solução satisfatória. ALGORITMOS - EXEMPLOS É um algoritmo cuja sequência de passos, a principio, não pode ser executada por um computador. Observação: O termo Algoritmo está muito ligado à Ciência da Computação, mas, na realidade, ele pode ser aplicado a qualquer problema cuja solução possa ser decomposta em um grupo de instruções. ALGORITMOS NÃO COMPUTACIONAIS CONCEITO Fritar um ovo: 1. Colocar um ovo na frigideira. 2. Esperar o ovo ficar frito. 3. Remover o ovo da frigideira. ALGORITMOS NÃO COMPUTACIONAIS EXEMPLO ALGORITMOS NÃO COMPUTACIONAIS EXEMPLO Fritar um ovo: 1. Cortar uma rodela de cebola. 2. Untar a frigideira. 3. Colocar a rodela de cebola de frigideira. 4. Colocar um ovo dentro da rodela de cebola na frigideira. 5. Colocar sal no ovo. 6. Esperar o ovo ficar frito. 7. Remover o ovo da frigideira. 8. Comer. ALGORITMOS COMPUTACIONAIS ALGORITMOS COMPUTACIONAIS Linguagem de Programação Uma linguagem de programação contém os comandos que fazem o computador escrever algo na tela, realizar cálculos aritméticos, receber uma entrada de dados via teclado, e milhares de outras coisas, mas estes comandos precisam estar em uma ordem lógica. ALGORITMOS COMPUTACIONAIS Linguagem de Programação - Exemplos Cobol C Java Fortran C++ ALGORITMOS COMPUTACIONAIS Programa É uma sequência de instruções codificadas em uma linguagem de programação. Logo, um programa nada mais é do que um Algoritmo Computacional descrito em uma linguagem de programação. ALGORITMOS COMPUTACIONAIS O termo processamento de dados é muitas vezes utilizado em conjunto com computadores, pois, em geral, é isto o que eles fazem: processam dados. Daí podem extrair os dois componentes básicos de um algoritmo computacional : dados e código. ALGORITMOS COMPUTACIONAIS Dados são os valores (números, nomes, etc.) de que precisamos para resolver o problema. Código são os comandos ou instruções que usaremos para manipular e "processar" os dados. ALGORITMOS COMPUTACIONAIS EXEMPLOS Além do uso na construção de hardware e software, algoritmos também são usados no planejamento de redes e na documentação de sistemas, uma vez que descrevem as tarefas a serem realizadas pelos programas. ELABORAÇÃO DO ALGORITMO • A elaboração do algoritmo descreve os dados e as suas manipulações. Essa descrição pode ser feita de diversas formas e por meio de técnicas diferentes que representarão a sequência dos passos (ou etapas) a serem realizados pela execução do algoritmo. Essa representação da sequência e lógica envolvida corresponde a um dos principais pontos de estudo e prática desta disciplina. ELABORAÇÃO DO ALGORITMO • Cada uma dessas técnicas fornece maneiras diferentes de representação do pensamento ou do raciocínio desejado, privilegiando algumas características da percepção e compreensão dos profissionais envolvidos. ELABORAÇÃO DO ALGORITMO Fluxograma • O fluxograma é uma técnica de representação que utiliza figuras geométricas pré-definidas para descrever ações (ou instruções) a serem realizadas na resolução de um problema. • Ele é elaborado após a fase de análise do problema. ELABORAÇÃO DO ALGORITMO Fluxograma • Existem várias figuras geométricas empregadas na construção do fluxograma, e buscaremos somente a compreensão da lógica racional proposta por esse tipo de representação de raciocínio. • As principais figuras usadas na elaboração do fluxograma estão relacionadas a seguir: ELABORAÇÃO DO ALGORITMO Fluxograma ELABORAÇÃO DO ALGORITMO Fluxograma – Exemplo Imagine uma situação em que a idade de uma pessoa deva ser analisada para classificá-la em jovem ou adulta. O algoritmo a seguir é apresentado graficamente por meio do fluxograma coerente com a situação sugerida. ELABORAÇÃO DO ALGORITMO • O entendimento de uma representação gráfica é mais fácil do que uma descritiva (textual). • É necessário aprender a simbologia gráfica e ela não apresenta muitos detalhes necessários para a transcrição do algoritmo no programa esperado. Fluxograma – Vantagens e Desvantagens ELABORAÇÃO DO ALGORITMO Diagrama de Chapin • Esta forma de representação foi elaborada por Nassi e Shneiderman e ampliada por Ned Chapin. • Ela almeja a substituição da representação tradicional (diagrama de blocos) por uma diagramação com quadros que ofereça uma visão hierárquica e estruturada da lógica proposta para um programa. ELABORAÇÃO DO ALGORITMO Diagrama de Chapin ELABORAÇÃO DO ALGORITMO • Representação gráfica por meio de estruturas que contemplam as estruturas de controle básicas (sequencial, condicional e de repetição). • A necessidade do conhecimento gráfico para representação do raciocínio em esquemas. Diagrama de Chapin – Vantagens e Desvantagens ELABORAÇÃO DO ALGORITMO Diagrama de Chapin - Observação • Entre os diversos métodos existentes para esse tipo de representação, o Diagrama de Chapin é um dos menos utilizados atualmente, principalmente porque exige bastante atenção do programador na representação do seu raciocínio, ao invés de possibilitar maior concentração sobre o problema a ser analisado e posteriormente solucionado. ELABORAÇÃO DO ALGORITMO Português Estruturado • Esta forma de representação, também conhecida como portugol ou pseudocódigo, consiste na descrição estruturada, por meio de regras pré-definidas, de fases (ou passos) a serem realizadas para a resolução do problema. • O Português Estruturado utiliza a linguagem natural para representar o raciocínio. • No caso brasileiro, a linguagem de comunicação natural é o Português. ELABORAÇÃO DO ALGORITMO Português Estruturado Exemplo ELABORAÇÃO DO ALGORITMO • Facilita a passagem do algoritmo para a linguagem de programação desejada (criação do programa), habituando o programador com as regras da programação. • Existe a necessidade do aprendizado das regras do pseudocódigo em português. Português Estruturado – Vantagens e Desvantagens ELABORAÇÃO DO ALGORITMO Português Estruturado - Observação • A linguagem de comunicação natural é imprecisa e muitasvezes prolixa, dificultando a comunicação correta com o computador, quando utilizada de forma bem natural. Por isso, é tão necessária a incorporação de normas e regras que permitam a representação organizada e eficiente da solução desejada, indicando sempre, com clareza e precisão, o que realmente o computador deve fazer. ALGORITMOS REGRAS PARA CONSTRUÇÃO Para escrever um algoritmo precisamos descrever a sequência de instruções, de maneira simples e objetiva. Para isso utilize algumas técnicas: • Usar somente um verbo por frase; • Imaginar que você está desenvolvendo um algoritmo para pessoas que não trabalham com informática; • Usar frases curtas e simples; • Ser objetivo; • Procurar usar palavras que não possuam sentido ambíguo. ALGORITMOS DICAS PARA CONSTRUÇÃO Faça uma leitura de todo o problema até o final, a fim de formar a primeira impressão. A seguir, releia o problema e faça anotações sobre os pontos principais; Verifique se o problema foi bem entendido. Questione se preciso, ao autor do problema sobre suas dúvidas. Releia o problema quantas vezes for preciso para tentar entende-lo; Extraia do problema todas as suas saídas; Extraia do problema todas as suas entradas; ALGORITMOS DICAS PARA CONSTRUÇÃO Identifique qual é o processamento principal; Verifique se será necessário algum valor intermediário que auxilie a transformação das entradas e saídas. Esta etapa pode parecer obscura no inicio, mas com certeza no desenrolar do algoritmo, estes valores aparecerão naturalmente; Teste cada passo do algoritmo, com todos os seus caminhos para verificar se o processamento está gerando os resultados esperados, crie valores de teste para submeter ao algoritmo. ELEMENTOS DE UM ALGORITMO ELEMENTOS DE UM ALGORITMO • Entrada – São os dados de entrada do algoritmo. São os valores que serão utilizados para efetuar determinado processamento. • Processamento – São os cálculos, verificações, comparações ou qualquer outra operação, qualquer outro processamento que produza um resultado final. • Saída – São os resultados obtidos com o processamento dos dados de entrada. ALGORITMOS - RACIOCINANDO Fazer um algoritmo de um bolo. Dados de entrada: Ovos, farinha de trigo, leite. Dados de processamento: Bater tudo na batedeira. Dados de saída: O bolo pronto. Obrigada! Contato: ione.goulart@estacio.br ALGORITMOS E PROGRAMAÇÃO mailto:ione.goulart@estacio.br
Compartilhar