Apostila Lógica de Programação
86 pág.

Apostila Lógica de Programação


DisciplinaDesenvolvimento de Sistemas141 materiais579 seguidores
Pré-visualização14 páginas
de programação de computadores: os erros de programação, 
ou bugs. 
Conforme vimos nas primeiras aulas, o desafio do programador é construir o 
melhor conjunto de lógica e instruções para entregar a solução para um problema. 
Por isso, é fundamental um excelente entendimento de qual é o problema a ser 
resolvido e quais são as variáveis que devem ser consideradas para sua resolução. 
Segundo Behring (1989), bug é um erro ou um defeito na construção de um 
programa, ou ainda um engano na instalação do equipamento de processamento de 
dados, provocando seu mau funcionamento. 
Nesse contexto, um algoritmo pode conter dois tipos de erros na sua 
construção: 
\u2022 Erros de sintaxe; 
\u2022 Erros de lógica. 
 
6.2 Erros de sintaxe 
 Os erros de sintaxe ocorrem quando a instrução foi digitada fora dos padrões 
que a linguagem exige, por exemplo, em pseudocódigo utilizado neste curso, a 
criação de um bloco SE, sem terminar com a palavra FIMSE, ou a palavra ENTÃO, 
sem o til na letra A. Todos os softwares mais atuais de mercado para programação 
de computadores, já fornecem um aviso após a digitação de uma sintaxe errada, 
orientando o programador para corrigir o problema antes de executar o programa 
(apesar desse comportamento ser uma opção para o programador, dentro do 
software em uso). 
 No caso do software que estamos utilizando neste curso (Portugol), quando o 
programador digita uma palavra que está correta no pseudocódigo, o editor destaca 
a palavra em negrito figura 19). 
 
 
Figura 19 \u2013 Exemplos de reconhecimento dos elementos construídos 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
Algoritmos 
64 
 
Além disso, o editor também apresenta cores diferentes para os elementos que 
compõem as instruções digitadas, exemplo: valores em vermelho e símbolo de 
atribuição de valor em azul. 
 
6.3 Erros de lógica 
 
 Os erros de lógica são mais complexos de resolver. Nesses casos, o programa 
foi construído com a sintaxe correta e executado tranqüilamente, mas o resultado 
apresentado não foi o esperado. Dessa forma, os erros de lógica não apresentam 
mensagem de erro específica e resolvê-los é, muitas vezes, uma tarefa trabalhosa 
para o programador. 
 Diante desse grande desafio, os fabricantes de software para programadores 
ampliaram o potencial das ferramentas para analisar código. São ferramentas 
conhecidas como debugger ou depuradores de código de programação. Existem 
as mais variadas ferramentas disponíveis no mercado, pagas e gratuitas. 
Normalmente as mais comuns utilizadas são as fornecidas em conjunto com alguma 
ferramenta de desenvolvimento. A ferramenta Portugol também oferece um recurso 
de depuração do pseudocódigo criado pelo programador figura 20). 
 
 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
Algoritmos 
65 
 Figura 20 \u2013 Menu Algoritmo do software Portugol 
 
A janela de monitoramento apresenta o conteúdo das variáveis figura 21). 
 
 
Figura 21 \u2013 Janela de depuração de código no software Portugol 
SÍNTESE 
 
 Nesta aula você iniciou a construção de programas que possuem desvios 
condicionais. Aprendeu a diferença entre programas seqüências e condicionais, e 
entendeu a diferença entre um programa condicional simples e composto. 
 Também deve ter percebido a diferença entre o uso de desvios usando a 
palavra SE e os desvios através da palavra SELECIONAR-CASO. Esta última é uma 
opção adequada para atender a um grande número de condições em um mesmo 
programa. 
 As regras de pseudocódigo para a construção de algoritmos com desvios 
foram apresentadas, inclusive com exemplos simples. 
 Finalmente, você obteve contato com um tópico fundamental da programação 
de computadores: erros. Você percebeu que a máxima \u201cErrar é humano\u201d, também se 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
Algoritmos 
66 
aplica no desenvolvimento de sistemas, e existem ferramentas e recursos para que 
você procure localizar e eliminar erros. 
 Você pôde perceber, não há grandes dificuldades na construção de 
programas e os desvios condicionais realizam um papel fundamental em 
programação de computadores. 
 Você chegou até aqui de forma muito construtiva. 
Até a próxima aula. 
 
 
 
 
 
 
 
 
 
 
EXERCÍCIOS PROPOSTOS 
 
1) Numa festa, foi feito um sorteio para distribuir um prêmio. Cinco pessoas foram 
sorteadas e deveriam pegar uma bola numerada de 1 a 5, Conforme o algarismo 
sorteado o prêmio será: 
Número da Bola % do prêmio 
1 10% 
2 25% 
3 15% 
4 20% 
5 30% 
 
O usuário deverá informar o valor do prêmio e qual o número da bola que tirou. 
Calcule o valor do prêmio e escreva na tela, utilizando o desvio ESCOLHE- CASO. 
Construa o algoritmo usando o software PORTUGOL. 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
Algoritmos 
67 
 
2) Quais são os dois tipos de erros na construção de algoritmos? 
___________________________________________________________________
___________________________________________________________________
___________________________________________________________________ 
 
3) Crie um algoritmo que receba o nome e a nota de um determinado aluno. Caso a 
nota seja maior ou igual a sete, imprima aprovado, caso negativo, imprima 
reprovado. 
 
4) Faça um algoritmo que após receber dois valores numéricos, calcule a média e 
imprima o resultado se, e somente se for maior que 33. 
 
 
 
 
 
Aula 6 
ESTRUTURAS DE PROGRAMAÇÃO - 
REPETIÇÃO 
 
Objetivos da aula 
 
Ao final desta aula, você deverá ser capaz de: 
 
\u2022 Construir algoritmos usando estruturas de controle de repetição; 
\u2022 Construir lógica adequada para atender à estrutura de repetição. 
Conteúdos da aula 
 
Acompanhe os assuntos desta aula, se preferir, ao 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
Algoritmos 
68 
término, assinale o conteúdo já estudado. 
\ufffd Estruturas de repetição 
\ufffd Bloco ENQUANTO-FAZ 
\ufffd Bloco FAZ-ENQUANTO 
\ufffd Bloco PARA-ATÉ-PASSO 
 
Bem vindo a mais esta aula do curso. Veja que agora vamos evoluir o 
conceito de lógica condicional, usando blocos de repetição e 
entender quando utilizar uma condição ou outra, de acordo com o 
problema a ser resolvido. 
Boa aula! 
 
 
1 ESTRUTURAS DE REPETIÇÃO 
 
 Os algoritmos estudados até agora lhe apresentaram problemas de 
programação envolvidos com entrada, saída, atribuição e seleção. Este é o 
momento de damos uma passo adiante, considerando que você já obteve 
experiência suficiente para avançarmos nos assuntos. 
 Muitos problemas requerem um mecanismo de repetição, no qual algum 
cálculo ou seqüência de instruções é repetida, muitas vezes, usando diferentes 
condições. 
 Esta aula irá explorar as alternativas para a construção de repetições e seus 
diferentes métodos de uso. É comum alguns autores descrevem os blocos de 
repetição de laços (ou loopings) porque, após a execução do último comando de 
instrução, há uma avaliação (ou teste) e, de acordo com o resultado, o programa 
termina a repetição ou retorna ao primeiro comando, reiniciando a execução das 
instruções dentro do laço. 
 Cada repetição é chamada de iteração ou passagem pelo laço. 
 Para se construir uma seção repetitiva em um algoritmo é necessário a 
presença de quatro elementos (figura 22): 
SOCIESC \u2013 Sociedade Educacional de Santa Catarina 
Algoritmos 
69 
\u2022 O primeiro é um comando de repetição, que define os limites da seção de 
código a ser repetida e controla se o código deve ser repetido ou não. Neste 
curso vamos estudar três diferentes estruturas de repetição: repita-até, 
enquanto-faz e para-até-passo; 
\u2022 Cada uma destas estruturas necessita de uma condição que deve ser avaliada, 
vem a ser o segundo elemento da construção de uma seção repetitiva de 
código. As condições válidas aqui são idênticas