






Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Material sobre Lógica de Programação
Tipologia: Notas de aula
1 / 11
Esta página não é visível na pré-visualização
Não perca as partes importantes!







Material Didático do Instituto Metrópole Digital - IMD Versão 2.0 - Todos os Direitos reservados
Na aula anterior, fizemos uma introdução à nossa disciplina. Conceituamos lógica e algoritmos. Identificamos a importância do estudo desses elementos e da estruturação do nosso raciocínio no sentido de encontrar a solução de problemas. Aprendemos a construir sequências lógicas de passos para atingir tais soluções. Conhecemos também uma ferramenta que nos auxiliará a construir algoritmos ao longo de nossas aulas: oVisuAlg. Realizamos o download de instalação e conhecemos as principais funcionalidades da ferramenta.
Nesta segunda aula, daremos continuidade ao estudo dos algoritmos, identificando as suas principais formas de representação: a descrição narrativa, o fluxograma e o pseudocódigo (ou portugol). Refletiremos sobre as principais vantagens e desvantagens de cada uma, veremos exemplos e exercitaremos a construção de algoritmos nessas três formas de representação.
Vídeo 01 - Apresentação
Ao final desta aula, você deverá ser capaz de:
Identificar as três principais formas de representação de algoritmos.
Identificar as principais vantagens e desvantagens de cada uma dessas três formas de representação.
Construir algoritmos utilizando as três formas de representação.
Passo 2: Aqueça o forno a 180 graus;
Passo 3: Bata as claras em neve e reserve;
Passo 4: Em uma travessa, bata o açúcar, a manteiga e as gemas;
Passo 5: Misture a farinha e o leite;
Passo 6: Bata bem, até ficar bem homogêneo;
Passo 7: Com a ajuda de uma colher, acrescente o fermento;
Passo 8: Por último, adicione as claras em neve e mexa cuidadosamente;
Passo 9: Coloque em uma forma untada com manteiga e farinha de trigo e leve ao forno médio para assar por aproximadamente 35 minutos ou até que, ao espetar um palito, esse saia seco;
Passo 10: Após assado, desligue o forno e deixe o bolo esfriar;
Passo 11: Desenforme e saboreie.
É fato que a receita contém passos simples de entender, por ser escrita em nossa linguagem natural.
Agora, vamos reler o passo 9 da receita:
Passo 9: Coloque em uma forma untada com manteiga e farinha de trigo e leve ao forno médio para assar por aproximadamente 35 minutos ou até que, ao espetar um palito, esse saia seco;
A informação em negrito é imprecisa e pode ser interpretada de diferentes formas por diferentes pessoas. Ou seja, "aproximadamente 35 minutos" pode ser um pouco menos que 35 minutos pra uma pessoa e um pouco mais que 35 minutos pra outra pessoa executando a mesma receita. Além disso, não fica clara a quantidade de manteiga e farinha de trigo que deve ser aplicada na forma.
Essa imprecisão dificultaria, portanto, a realização do algoritmo e sua possível transcrição para uma linguagem de programação.
Nessa forma de representação, escrevemos o algoritmo utilizando símbolos gráficos predefinidos, enfatizando os passos individuais e suas interconexões. Observe, no Quadro 1, os símbolos que são utilizados no fluxograma e o que cada um deles representa no algoritmo.
Quadro 1 - Símbolos utilizados em um Fluxograma
A principal vantagem de se utilizar fluxogramas para construir algoritmos é que é mais fácil entender um conteúdo descrito de forma gráfica do que um descrito textualmente. Além disso, os fluxogramas obedecem a um padrão mundial quanto à simbologia.
Já as desvantagens são as seguintes: os dados podem não ser suficientemente detalhados, dificultando, assim, a transcrição do algoritmo para o programa a ser desenvolvido; é necessário aprender a simbologia dos fluxogramas; e, para algoritmos mais extensos, a construção do fluxograma pode se tornar mais complicada.
Se você for pesquisar em outras fontes, verá que além desses termos (pseudocódigo ou portugol), podemos nos referir a essa forma de representação de outras maneiras, como: português estruturado, linguagem estruturada ou pseudolinguagem.
O pseudocódigo obedece a regras predefinidas de estrutura para descrever um algoritmo. Vimos que a descrição narrativa pode ser interpretada de diversas maneiras. Isso pode gerar ambiguidades. Já o fluxograma tem maior precisão, mas é pouco descritivo, o que pode torná- lo insuficiente, além de complicar-se, conforme o crescimento do algoritmo.
O pseudocódigo é uma combinação das melhores características das duas formas de representação anteriores. A principal vantagem da utilização do pseudocódigo é que, mesmo sendo independente de qualquer linguagem de programação, sua estruturação facilita a transcrição do algoritmo criado para o código dessas linguagens (logo mais você verá que aspectos da pseudolinguagem facilitam essa transcrição). Outras vantagens: pode definir quais os dados a serem utilizados e como eles vão estar estruturados, além de utilizar o português como base.
A desvantagem é que precisamos aprender as regras dessa forma de representação. Também figura como desvantagem a não padronização de sua estruturação. Isso quer dizer que você encontrará um mesmo termo descrito de formas diferentes em diferentes literaturas. O pseudocódigo será a forma de representação utilizada durante o estudo dessa disciplina. Vamos ver como funciona a estruturação de algoritmos com pseudocódigo. Observe o exemplo a seguir , também com o cálculo da média de um aluno.
Observação: Vamos utilizar, em nossos exemplos, a notação utilizada na ferramentaVisuAlg. Perceba que a notação // representa o que chamamos de comentário. Tudo que se encontra após um // em uma linha é ignorado peloVisuAlg mas visível pelos desenvolvedores, o que facilita a explicação de códigos com o visto a seguir.
algoritmo "Média" //aqui, definimos o nome do algoritmo.
var//início das declarações das variáveis.
nota1 : real//aqui, é definida a entrada da primeira nota do aluno.
nota2 : real// aqui, é definida a entrada da segunda nota do aluno.
media : real//declaração da variável em que será armazenado o resultado do cálculo da média.
Inicio//início do bloco de execução (local onde instruímos o computador a executar os comandos).
escreva ("Digite o valor da primeira nota: ")//o programa exibe na tela o texto entre aspas.
leia (nota1)// o programa lê o que o usuário escreveu: a primeira nota
escreva ("Digite o valor da segunda nota: ")//o programa exibe na tela o texto entre aspas.
leia (nota2)// o programa lê o que o usuário escreveu: a segunda nota
media <- (nota1 + nota2)/2//é realizado o cálculo da média.
escreva ("A média do aluno é: ", media)//o valor encontrado é exibido na tel.
fimalgoritmo//fim do algoritmo.
Vamos chamar as instruções que estão entre as palavras início e fimalgoritmo de bloco de execução do algoritmo. Veja que o bloco de execução não está posicionado no mesmo alinhamento das palavras início e fimalgoritmo. Chamamos esse recuo de indentação.
Nesta aula, você compreendeu os conceitos referentes às três principais formas de representação dos algoritmos. Você viu também as vantagens e desvantagens de cada uma dessas formas de representação e aprendeu (e exercitou) a construção de algoritmos utilizando as três formas, sobretudo, o pseudocódigo, que será a forma de representação mais utilizada em nossas aulas. Percebemos que construir algoritmos nem sempre é uma tarefa simples. Contudo, o treino constante, através da prática de exercícios, não só auxilia no aprendizado das regras e técnicas, como também treina o raciocínio.
Vamos treinar a construção de algoritmos nas três formas de representação que vimos nesta aula.
a. O algoritmo ficou descrito de forma clara e legível? b. Qualquer indivíduo seria capaz de executar a receita de bolo descrita com essa forma de representação? Justifique sua resposta.
Procure se lembrar das técnicas de construção de algoritmos que vimos na aula anterior.
Lembre-se, durante a realização das atividades, de que cada forma de representação tem características que lhe são peculiares. Procure ser fiel às características que você aprendeu, na construção dos algoritmos.
Se encontrar dificuldades em escrever o algoritmo em pseudocódigo, escreva-o, antes, em forma de descrição narrativa e depois aplique as regras de pseudocódigo que você aprendeu nesta aula.
ASCENCIO, Ana F Gomes; CAMPOS, Edilene A. V. de. Fundamentos de programação de computadores: algoritmos, Pascal e C/C++. São Paulo: Prentice Hall, 2002.
MARTINS, Luiz G. A. Introdução a algoritmos. Uberlândia: UFU, 2009. Disponível em: <http://www.facom.ufu.br/~gustavo/IC/Programacao/Apostila_Algoritmos. pdf>. Acesso em: 17 abr. 2015.