Buscar

Apostila Lógica

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Lógica de Programação 1 
1 - Lógica de Programação 
A lógica para programação consiste em aprender a pensar na mesma seqüência 
em que o computador executa as tarefas, aprende-se a imaginar como as ações serão 
executadas partindo-se do estudo de um problema até chegar à construção de um 
algoritmo (solução). 
Quando pensamos em fazer um programa no computador, temos que ter em 
mente que a máquina desconhece totalmente alguns conceitos que para nós é muito 
óbvio. Por isto, devemos descrever cada passo por mais simples que seja para que haja 
uma seqüência lógica em nossa programação e assim, o computador executar todas as 
instruções necessárias para a execução de uma determinada tarefa. 
Será que para o computador é tão simples somar 1+1 como para nós, seres 
humanos? 
Vamos analisar... 
 Primeiramente é necessário armazenar o primeiro número fornecido pelo 
usuário na memória do computador. Ler e armazenar o primeiro número seria a primeira 
tarefa. 
Por que armazenar? 
Porque ele somará o primeiro número com o próximo número fornecido! 
Enquanto isto, ele deve memorizar o primeiro número, senão, quando fornecermos o 
próximo, ele já esqueceu o primeiro! 
Ler e armazenar o segundo número pelo mesmo motivo que o primeiro! 
Executar a operação de soma 
Memorizar o resultado da soma para mostrar em sua tela! 
Quando falamos em memorizar, estamos dizendo que o dado deve ser colocado 
na memória do computador. Inserimos valores na memória de um computador através 
de VARIÁVEIS. 
 
1.1 - Algumas definições de Lógica 
LÓGICA é a técnica de encadear os pensamentos para se atingir um objetivo 
(Sonia Maria Duarte). 
LÓGICA é a seqüência coerente, regular e necessária de acontecimentos, de 
coisas; coerência de raciocínio, de idéias; maneira do raciocínio particular que cabe a 
um indivíduo ou a um grupo (Dicionário Aurélio). 
LÓGICA é a ciência dos princípios formais do raciocínio (Manzano). 
 
Lógica de Programação 2 
1.2 - O uso da Lógica na análise de um problema 
Quando pensamos em desenvolver um programa, devemos ter domínio sobre o 
mesmo, analisando cada etapa do problema, para que possamos fornecer ao computador 
uma seqüência lógica de passos que a máquina deverá executar para que resolva o nosso 
problema. 
 
 
Etapas para a solução de um problema 
 
“Analisar um problema significa compreendê-lo rigorosamente, ter domínio 
sobre o mesmo, estudar as possíveis soluções para o problema e conseguir coletar 
todos os dados necessários para a sua solução. Analisar um problema é conseguir 
descrever todos os processos, passo a passo, até que a resolução seja concluída” 
(Lina). 
“Problema – proposta duvidosa que pode ter numerosas soluções ou questão 
não solvida e que é objeto de discussão” (Manzano). 
 
Para resolver qualquer problema, iremos dividi-lo em três partes: 
- Dados de entrada: são as informações necessárias que eu preciso obter para atingir o 
objetivo. 
- Processamento: é o calculo (caso tenha um) que deverá ser feito para solucionar o 
problema. 
 - Saída: objetivo a atingindo. 
Exemplo: Calcular a média de um aluno. Sabendo que a média é a soma das duas notas 
dividido por 2. 
Dados de entrada: Nota1 e Nota2 
Processamento: Média=(Nota1+Nota2)/2 
Saída: Média 
Lógica de Programação 3 
Exercícios 
1. Escreva os dados de entrada, processamento e saída de cada um dos itens abaixo: 
a) Baseado nos valores de duas contas a pagar. Calcule e mostre o total a pagar 
b) Receba a base e a altura de um cômodo. Calcule e mostre a área desse cômodo 
sabendo que a área=base * altura. 
c) Receba o salário de um funcionário, calcule um acréscimo de 40 reais e mostre o 
novo salário. 
d) Receba a área de um cômodo, sabendo que são necessários 18W por metro quadrado 
para iluminar esse cômodo. Calcule e mostre quantos watts serão necessários para essa 
iluminação. 
 
2 – Algoritmos 
A automação é o processo em que uma tarefa deixa de ser desempenhada pelo 
homem e passa a ser realizada por máquinas, sejam estes dispositivos mecânicos, 
eletrônicos (como os computadores) ou de natureza mista. 
Para que a automação de uma tarefa seja bem-sucedida é necessário que a 
máquina que passará a realizá-la seja capaz de desempenhar cada uma das etapas 
constituintes do processo a ser automatizado com eficiência, de modo a garantir a 
repetibilidade do mesmo. 
Assim, é necessário que seja especificado com clareza e exatidão o que deve ser 
realizado em cada uma das fases do processo a ser automatizado, bem como a seqüência 
em que estas fases devem ser realizadas. 
À especificação da seqüência ordenada de passos que deve ser seguida para a 
realização de uma tarefa, garantindo a sua repetibilidade, dá-se o nome de algoritmo. 
Ao contrário do que se pode pensar, o conceito de algoritmo não foi criado para 
satisfazer às necessidades da computação. Pelo contrário, a programação de 
computadores é apenas um dos campos de aplicação dos algoritmos. Na verdade, há 
inúmeros casos que podem exemplificar o uso (involuntário ou não) de algoritmos para 
a padronização do exercício de tarefas rotineiras (vide exemplos da Seção 2.2.1). No 
entanto, daqui adiante a atenção desta apostila estará voltada à automação de tarefas 
utilizando computadores. 
Para que um computador possa desempenhar uma tarefa é necessário que esta 
seja detalhada passo-a-passo, numa forma compreensível pela máquina, utilizando 
aquilo que se chama de programa. Neste sentido, um programa de computador nada 
mais é que um algoritmo escrito numa forma compreensível pelo computador 
(linguagem de programação). 
 
2.1 Algumas Definições de Algoritmo 
"Serve como modelo para programas, pois sua linguagem é intermediária à 
linguagem humana e às linguagens de programação, sendo então, uma boa ferramenta 
na validação da lógica de tarefas a serem automatizadas." 
Lógica de Programação 4 
“Os algoritmos, servem para representar a solução de qualquer problema, mas no 
caso do Processamento de Dados, eles devem seguir as regras básicas de programação 
para que sejam compatíveis com as linguagens de programação.” 
 
2.2 Formas de Representação de Algoritmos 
Existem diversas formas de representação de algoritmos, mas não há um 
consenso com relação à melhor delas. 
O critério usado para classificar hierarquicamente estas formas está diretamente 
ligado ao nível de detalhe ou, inversamente, ao grau de abstração oferecido. 
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. 
Dentre as formas de representação de algoritmos mais conhecidas podemos 
citar: 
 - Descrição Narrativa; 
 - Fluxograma Convencional; 
 - Pseudocódigo, também conhecido como Linguagem Estruturada ou Portugol. 
 
2.2.1 Descrição Narrativa 
Nesta forma de representação os algoritmos são expressos diretamente em 
linguagem natural. Como exemplo tem-se os algoritmos seguintes: 
 
- 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 
 
- 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 
Abaixaro carro 
Dar o aperto final nas porcas 
Lógica de Programação 5 
- Tomando um banho: 
Entrar no banheiro e tirar a roupa 
Abrir a torneira do chuveiro 
Entrar na água 
Ensaboar-se 
Sair da água 
Fechar a torneira 
Enxugar-se 
Vestir-se 
 
- 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 
 
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". 
 
2.2.2 Fluxograma Convencional 
É uma representação gráfica de algoritmos onde formas geométricas diferentes 
implicam ações (instruções, comandos) distintas. 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, como o tipo das 
variáveis usadas. 
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. Como esta apostila não 
está interessada em detalhes físicos da implementação, mas tão somente com o nível 
lógico das instruções do algoritmo, será adotada a notação simplificada abaixo para os 
fluxogramas. Principais formas geométricas usadas em fluxogramas: 
Início e final do fluxograma 
 
Operação de entrada de dados 
 
Operação de saída de dados 
 
Operação de processamento 
 
Decisão 
Lógica de Programação 6 
 
De modo geral, um fluxograma se resume a um único símbolo inicial por onde a 
execução do algoritmo começa, e um ou mais símbolos finais, que são pontos onde a 
execução do algoritmo se encerra. Partindo do símbolo inicial, há sempre um único 
caminho orientado a ser seguido, representando a existência de uma única seqüência de 
execução das instruções. Isto pode ser melhor visualizado pelo fato de que, apesar de 
vários caminhos poderem convergir para uma mesma figura do diagrama, há sempre um 
único caminho saindo desta. Exceções a esta regra são os símbolos finais, dos quais não 
há nenhum fluxo saindo, e os símbolos de decisão, de onde pode haver mais de um 
caminho de saída (usualmente dois caminhos), representando uma bifurcação no fluxo. 
Abaixo mostra a representação do algoritmo de cálculo da média de um aluno 
sob a forma de um fluxograma. 
 
 
 
 
 
 
 
 
 
 
 
 
2.2.3 Pseudocódigo 
Esta forma de representação de algoritmos é rica em detalhes, como a definição 
dos tipos das variáveis usadas no algoritmo. Por assemelhar-se bastante à forma em que 
os programas são escritos, encontra muita aceitação. 
Na verdade, esta representação é suficientemente geral para permitir a tradução 
de um algoritmo nela representado para uma linguagem de programação específica seja 
praticamente direta. 
A forma geral da representação de um algoritmo na forma de pseudocódigo é a 
seguinte: 
Algoritmo <nome_do_algoritmo> 
<declaração_de_variáveis> 
Início 
<corpo do algoritmo> 
Fim 
 
Início 
N1,N2 
MEDIA 
(N1 + N2) / 2 
MEDIA >= 7 
APROVADO 
REPROVADO 
Fim 
Lógica de Programação 7 
Algoritmo é uma palavra que indica o início da definição de um algoritmo em 
forma de pseudocódigo. 
<nome_do_algoritmo> é um nome simbólico dado ao algoritmo com a 
finalidade de distingui-los dos demais. 
<declaração_de_variáveis> consiste em uma porção opcional onde são 
declaradas as variáveis globais usadas no algoritmo principal e, eventualmente, nos 
subalgoritmos. 
Início e Fim são respectivamente as palavras que delimitam o início e o término 
do conjunto de instruções do corpo do algoritmo. 
Como exemplo, abaixo mostra a representação do algoritmo do cálculo da média 
de um aluno, na forma de um pseudocódigo. 
 
Algoritmo Calculo_Media 
Declare N1, N2, MEDIA: real 
Início 
Leia N1, N2 
MEDIA ← (N1 + N2) / 2 
Se MEDIA >= 7 então 
Escreva “Aprovado” 
Senão 
Escreva “Reprovado” 
Fim_se 
Fim 
 
2.3 Síntese 
Há diversas formas de representação de algoritmos que diferem entre si pela 
quantidade de detalhes de implementação que fornecem ou, inversamente, pelo grau de 
abstração que possibilitam com relação à implementação do algoritmo em termos de 
uma linguagem de programação específica. 
Dentre as principais formas de representação de algoritmos destacam-se: a 
descrição narrativa, o fluxograma convencional e o pseudocódigo (ou linguagem 
estruturada). 
 
3 – Tipos de Dados 
Um computador manipula informações ou dados. Dados podem ser as vendas 
semanais de uma loja, nomes e telefones de uma lista, resultados de uma experiência, 
etc. Num programa, uma variável é uma entidade que possui um valor, sendo conhecida 
no programa por um nome (identificador). 
Lógica de Programação 8 
Variáveis e constantes são os elementos básicos que um programa manipula. 
Uma variável é um espaço reservado na memória do computador para armazenar um 
tipo de dado determinado. 
Variáveis devem receber nomes para poderem ser referenciadas e modificadas 
quando necessário. Um programa deve conter declarações que especificam de que tipo 
são as variáveis que ele utilizará e às vezes um valor inicial. Tipos podem ser, por 
exemplo: inteiros, reais, caracteres, etc. As expressões combinam variáveis e constantes 
para calcular novos valores. 
3.1 - Tipos de Dados 
Inteiros - dados numéricos inteiros positivos ou negativos. Ex: 100, 45, -8, 0. 
Reais – dados numéricos positivos, negativos e números fracionários. Ex: 100, 
45, -8, 0, 2.3, -23.765. 
Literal – seqüências contendo letras, números e símbolos especiais. Conhecido 
também como String ou Alfanumérico. Uma seqüência de caracteres deve ser indicada 
entre aspas (““). Ex: “Rua Centenário, 300”, Rg: 45.309.999-X. 
Lógicos – dados com apenas dois valores: Verdadeiro e Falso. É também 
conhecido como Booleano em homenagem ao matemático George Boole. 
 
3.2 – Variáveis 
“Tudo aquilo que é sujeito a variações, que é incerto, instável ou inconstante“ 
(Manzano). 
Todo o dado armazenado na memória do computador deve ser previamente 
identificado e indicado o seu tipo. 
Variável é a representação simbólica dos elementos de um certo conjunto. Cada 
variável corresponde a uma posição de memória, cujo conteúdo pode se alterado ao 
longo do tempo durante a execução de um programa. Embora uma variável possa 
assumir diferentes valores, ela só pode armazenar um valor a cada instante. 
A decisão em usar um ou outro formato depende dos valores que se pretende 
armazenar. 
 
Lógica de Programação 9 
 
 
"Imagine a memória do computador como um grande arquivo com várias 
gavetas, sendo que em cada gaveta é possível guardar apenas um único valor por vez, e 
essas gavetas, como em um único arquivo, deverão estar identificadas com uma 
"etiqueta" contendo um nome" (Manzano). 
 
Declaração de Variáveis: 
DECLARE X: integer 
Declaramos uma variável com o nome “X”, do tipo inteiro, ou seja, esta variável 
armazenará valores inteiros. 
 
Atribuiçãode variável 
Atribuir um valor a uma variável, significa entregar a ela um determinado valor. 
A operação de atribuição é indicada pelo símbolo ←. 
Veja o exemplo abaixo: 
X ←10. 
Isto significa que o valor 10 está sendo atribuído à variável X, ou seja, após a 
execução desse comando, a variável de nome X conterá o número inteiro (valor) 10. 
Regras para nomes de variáveis 
- NUNCA deve começar por um número, sempre por uma letra; 
- NÃO poderá ter espaços em branco; 
- NUNCA utilizar palavras reservadas de uma linguagem de programa; 
- NÃO poderão ser utilizados outros caracteres a não ser letra e números; 
Dica Importante! 
Utilize sempre identificadores sugestivos. Evite, por exemplo, chamar as 
variáveis que armazenam as notas bimestrais de X, Y, Z, W, pois esses identificadores 
não são sugestivos das funcionalidades dessas variáveis no algoritmo. 
 
3.3 - Constante 
Constante é tudo aquilo que é fixo, estável. 
Constante é um determinado valor fixo que não se modifica ao longo do tempo, 
durante a execução de um programa. Conforme o seu tipo, a constante é classificada 
como sendo numérica, lógica e literal. 
Por exemplo, pi = 3.14159. 
Outro exemplo: 
Multa = Dias_em_atraso * 1.83 (O valor 1.83 da fórmula acima é uma 
constante). 
 
Lógica de Programação 10 
4 - Operadores 
Os operadores são meios pelo qual incrementamos, decrementamos, 
comparamos e avaliamos dados dentro do computador. Temos três tipos de operadores: 
- Operadores Aritméticos; 
- Operadores Relacionais; 
- Operadores Lógicos; 
 
4.1 - Operadores Aritméticos 
Os operadores aritméticos são os utilizados para obter resultados numéricos. 
Além da adição, subtração, multiplicação e divisão, podem utilizar também o operador 
para exponenciação. 
Os símbolos para os operadores aritméticos são: 
 
Hierarquia das Operações Aritméticas 
1 º ( ) Parênteses; 
2 º Exponenciação; 
3 º Multiplicação, divisão (o que aparecer primeiro); 
4 º + ou – (o que aparecer primeiro); 
Exemplo: 
TOTAL = PRECO * QUANTIDADE 
1 + 7 * 2 ** 2 –1 = 28 
3 * (1 – 2) + 4 * 2 = 5 
 
Exercício Resolvido 
1. Faça um pseudocódigo que receba dois números inteiros. Calcule e mostre a 
soma dos números. 
Solução: 
 Dados de Entrada: Numero1, Numero2 
 Processamento: Soma=Numero1+Numero2 
 Saída: Soma 
Lógica de Programação 11 
 
Algoritmo calculo_soma 
Declare Numero1, Numero2, soma: real 
Início 
Leia Numero1, Numero2 
soma ← Numero1 + Numero2 
Escreva Soma 
Fim 
 
Exercícios Propostos 
1. Faça um pseudocódigo que receba a base e a altura de um cômodo. 
Calcule e mostre a área desse cômodo sabendo que a área=base * 
altura. 
2. Faça um pseudocódigo que calcule a área de um quadrado e mostre o 
resultado. Sabendo que Área = lado*lado. 
3. Faça um algoritmo que receba o salário de um funcionário. Sabendo 
que ele receberá um acréscimo de 40 reais, calcule e mostre o novo 
salário. 
4. Faça um algoritmo que receba o salário de um funcionário, calcule e 
mostre o novo salário, sabendo-se que este sofreu aumento de 25% 
5. Faça um algoritmo que receba o valor de um depósito e o valor da taxa 
de juros, calcule e mostre o valor do rendimento e o valor total depois 
do rendimento. 
6. Desenvolva a lógica de um problema em português estruturado, o qual 
recebe as dimensões de um cômodo, sabendo que são necessários 18W 
por metros quadrados para iluminar esse cômodo. Calcule e mostre 
quantos watts serão necessários para esse cômodo. 
7. Faça um algoritmo que receba peso e a idade de uma pessoa. Calcule e 
mostre o índice de massa corpórea (IMC). 
 Sendo IMC= peso/altura*altura. 
 
4.2 - Operadores Relacionais 
Os operadores relacionais são utilizados para comparar String de caracteres e 
números. Os valores a serem comparados podem ser caracteres ou variáveis. 
Estes operadores sempre retornam valores lógicos (verdadeiro ou falso / true ou 
False). 
Para estabelecer prioridades no que diz respeito a qual operação executar 
primeiro, utilize os parênteses. 
Os operadores relacionais são: 
Lógica de Programação 12 
 
Exemplo: 
 
Tendo duas variáveis A = 5 e B = 3 
Os resultados das expressões seriam: 
 
4.3 - Operadores Lógicos 
Atuam sobre expressões retornando sempre a valores lógicos como verdadeiro 
ou falso. 
Os operadores lógicos são: 
E / AND - Uma expressão AND (E) é verdadeira se todas as condições forem 
verdadeiras. 
OR/OU - Uma expressão OR (OU) é verdadeira se pelo menos uma condição 
for Verdadeira. 
NOT - Uma expressão NOT (NÃO) inverte o valor da expressão ou condição, se 
verdadeira inverte para falsa e vice-versa. 
Pode ser que você necessite, em algum momento, trabalhar com o 
relacionamento de duas ou mais condições ao mesmo tempo na mesma instrução se; 
efetuando desta forma testes múltiplos. Para estes casos é necessário trabalhar com os 
operadores lógicos, também conhecidos como operadores booleanos. Em alguns casos, 
o uso de operadores lógicos evita a utilização de instruções se encadeadas. 
 
Exercícios 
1. Sabendo que A equivale a 5 e B equivale a 10 e C equivale a 20 responda com 
verdadeiro(V) ou falso (F) as questões abaixo: 
a. 2*A=B 
b. (A+B-C)<>(A*2+C) 
Lógica de Programação 13 
c. B+A*2>A+C 
d. C-10>=B 
e. B+A*2<=C 
f. C+(A*B)=b*(A+B) 
 
5. Estrutura Condicional 
5.1 Estrutura Condicional Simples 
Se condição 
Então comando 
O comando só será executado se a condição for verdadeira. Uma condição é uma 
comparação que possui dois valores possíveis, verdade ou falso. 
Se Condição 
Então Início 
Comando1 
Comando2 
Comando3 
Fim. 
 
Exercício Resolvido: 
1. Faça um algoritmo que receba duas notas, calcule e mostre a média aritmética. 
Caso o aluno tenha média maior que 5 escreva “Aprovado” 
Solução: 
 Dados de Entrada: Nota1, Nota2 
 Processamento: Media=(Nota1+Nota2)/2 
 Saída: Media 
 
Algoritmo Média 
Declare Nota1, Nota2, media: real 
Início 
Leia Nota1, Nota2 
media ← (Nota1 + Nota2)/2 
Se media>=5 então 
Escreva “Aprovado 
Fim 
 
 
Lógica de Programação 14 
Exercícios: 
1. Faça um algoritmo que receba o valor do salário do funcionário. Caso esse valor 
seja menor que R$500 acrescente R$50 ao seu salário. No final mostre o salário 
novo. 
2. Em uma loja se o valor final da compra for maior que R$100,00 o cliente recebe 
um desconto de 10% sobre o valor da compra. Faça um algoritmo que receba o 
valor da compra, e calcule o desconto e mostre o valor final que o cliente irá 
pagar. 
 
 5.1 Estrutura Condicional Composta 
Se condição então 
 comando 1 
Senão 
 comando 2 
Se a condição for verdadeira, será executado o comando 1;caso contrário, se a 
condição é falsa, será executado o comando 2 
Se condição então 
Início 
 Comando 1 
 Comando 2 
Fim 
Senão 
Início 
 Comando 3 
 Comando 4 
Fim 
Se a condição for verdadeira, o comando 1 e o comando 2 serão executados;caso 
contrário, se a condição for falsa, o comando 3 e o comando 4 serão executados. 
 
Exercício Resolvido 
1. Faça um algoritmo que receba as notas de um aluno. Calcule a média e mostre a 
média e a mensagem conforme a tabela abaixo: 
Média Mensagem 
Menor que 5.0 Reprovado 
Maior ou igual a 5.0 Aprovado 
 
 
Dados de entrada: nota1,nota2 
Processamento: media=(nota1+nota2)/2 
Saída: media e a msg 
 
Lógica de Programação 15 
Algoritmo media 
Declare nota1,nota2,media,msg:real 
Início 
Leia nota1,nota2 
media←(nota1+nota2)/2 
Se media>=5 então 
 msg←”Aprovado” 
senão 
 msg←”Reprovado” 
Escrevamedia, msg 
Fim 
2. Baseado no exemplo anterior mostre a mensagem conforme a tabela abaixo: 
Média Mensagem 
Menor que 3.0 Reprovado 
Entre 3.0 e 5.0 Exame 
Maior ou igual a 5.0 Aprovado 
Dados de entrada: nota1,nota2 
Processamento: media=(nota1+nota2)/2 
Saída: media e a msg 
 
Algoritmo media 
Declare nota1,nota2,media:real 
Declare msg:literal 
Início 
Leia nota1,nota2 
media←(nota1+nota2)/2 
Se media>=5 então 
 msg←”Aprovado” 
senão Se media< 3.0 então 
 msg←”Exame” 
 Senão 
 msg←”Reprovado” 
Escreva media, msg 
Fim 
 
Exercícios Propostos 
 
1. Faça um algoritmo que receba a idade de uma pessoa e mostre a mensagem de 
maioridade ou não. 
 
2. Uma agência bancária possui dois tipos de investimentos, conforme o quadro a 
seguir. Faça um algoritmo que receba o tipo de investimento e o valor do investimento 
e que calcule e mostre o valor corrigido de acordo com o tipo de investimento. 
 
TIPO DESCRIÇÃO RENDIMENTO MENSAL 
1 Poupança 3% 
Lógica de Programação 16 
2 Fundos de renda fixa 4% 
 
 
3. Desenvolver um algoritmo para um sistema que será adotado por uma empresa de 
reciclagem, onde, a cada peça entrada no sistema o mesmo faz uma verificação de seu 
peso através de um sensor, e realiza um calculo simples verificando, o quanto de 
material bom ele irá aproveitar da mesma. Baseando que a peça é de metal, portanto: 
 
 Entre com o peso da peça 
Se a peça pesar mais de 50 Kg, irá se aproveitar 70% do peso da peça 
Se a peça for menor que 50Kg, irá se aproveitar 40% do peso total da peça 
 
Ao final mostra: 
Qual o peso que irá se aproveitar de uma determinada peça 
 
4. Faça um algoritmo que receba a idade de um nadador e mostre a sua categoria 
usando as regras a seguir: (usando operadores lógicos „E‟ ou „Ou‟) 
CATEGORIA IDADE 
Infantil 5 a 7 
Juvenil 8 a 10 
Adolescente 11 a 15 
Adulto 16 a 30 
Sênior Acima de 30 
 
 
6. Estrutura de Repetição 
 
6.1. Estrutura de repetição para número definido de repetições 
Essa estrutura de repetição é utilizada quando se sabe o número de vezes em que um 
trecho do algoritmo deve ser repetido. 
Para I valor_ inicial até valor_final faça 
 Comando1 
O comando1 será executado utilizando a variável I como controle, cujo conteúdo vai 
variar do valor_inicial até o valor_final, de 1 em 1, incrementando automaticamente. 
Para J valor_inicial até valor_final faça 
Início 
 Comando1 
 Comando2 
Fim 
O comando1 e o comando2 serão executados utilizando a variável J como controle, 
cujo conteúdo vai variar do valor_inicial até o valor_final, de 1 em 1, incrementando 
automaticamente. 
Lógica de Programação 17 
Exemplo: 
Para I 0 até 10 faça 
 Comando1 
O comando1 será executado 10 vezes. 
Exercício Resolvido 
1. Faça um algoritmo que calcule a média de todos os alunos de uma sala, 
sabendo que essa sala possui 30 alunos. No final mostre a média de cada 
aluno. 
Algoritmo media 
Declare n1,n2,media, I: real 
Início 
Para I 0 até 30 faça 
Início 
 Leia n1,n2 
 media (n1+n2)/2 
 Escreva media 
Fim 
Fim 
 
 
2. Desenvolva um algoritmo que receba o peso de 10 produtos de uma empresa 
de reciclagem, na qual cada peça ao passar por um sensor é verificada o peso 
e analisada o quanto da peça será reaproveitada, sabendo que a peça é um 
metal: 
a. Se a peça pesar mais de 50 kg irá aproveitar 70% do peso da peça 
b. Se a peça pesar menos ou igual 50 kg irá aproveitar 40% do peso da 
peça 
Ao final mostrar: 
 Qual o peso será aproveitado da peça. 
 
Algoritmo reciclagem 
Declare peso, I, aproveitado: real 
Início 
Para I 0 até 10 faça 
Início 
 Leia peso 
 Se peso>50 então 
 Aproveitado peso*70/100 
Senão 
 Aproveitado peso*40/100 
Escreva Aproveitado 
Fim 
Fim 
 
 
Lógica de Programação 18 
 
Exercícios 
1. Desenvolva um algoritmo que receba o peso de 500 produtos de uma empresa de 
reciclagem, na qual cada peça ao passar por um sensor é verificada o peso e analisada o 
quanto da peça será reaproveitada, sabendo que a peça é um metal: 
a. Se a peça pesar mais de 50 kg irá aproveitar 70% do peso da peça 
b. Se a peça pesar menos ou igual 50 kg e maior que 20 Kg irá aproveitar 40% 
do peso da peça 
c. Caso tenha igual ou menos que 20 kg não será aproveitada. 
Ao final mostrar: 
Qual o peso será aproveitado da peça. 
 
3. Uma loja tem 15 clientes cadastrados e deseja enviar uma correspondência a cada 
um deles anunciando um bônus especial. Faça um algoritmo que leia o valor das 
compras do cliente no ano passado. Calcule e mostre um bônus de 10% se o valor 
das compras for menor que R$ 1.000,00 e de 15%, caso contrário. 
 
Contador/Acumulador 
 
1. Contador 
São variáveis cujo objetivo é contar. 
Podemos contar, por exemplo: 
 O número de alunos aprovados de uma classe 
Cont_aluno cont_aluno+1 
 O números de peças sem defeitos 
Cont_pecas cont_pecas+1 
 
2. Acumulador 
Imagine que você acaba de abrir uma conta no Banco e quer verificar quanto 
gastará por semana em cheques. Se você fizer o controle manualmente, poderá a 
cada cheque emitido, marcar em uma caderneta o valor acumulado, e no final de 
semana verificar o total. 
No caso do computador, existe a possibilidade de aclocar um endereço de memória 
que possa guardar o valor acumulado a cada cheque. A este endereço(variável) de 
memória damos o nome de Acumulador 
No começo da semana o valor do acumulador será zero. E a cada cheque emitido 
alteraremos o valor do acumulador, substituindo o valor anterior: 
 
Acumulador acumulador+valor_cheque 
 
Exercício Resolvido 
 
1. Faça um algorimo que receba a idade de dez pessoas e que calcule e mostre: 
 a quantidade de pessoas com idade maior ou igual a 18 anos. 
 
Algoritmo Idade 
Declare contar_idade,I,idade: real 
Lógica de Programação 19 
Início 
contar_idade 0 
Para I 0 até 10 faça 
Início 
Leia idade 
Se idade>=18 entao 
 contar_idade contar_idade+1 
Fim 
Escreva contar_idade 
Fim 
2. Faça um algoritmo que receba a idade de dez pessoas e que calcule e mostre: 
 Média de todas as idades. 
 
Algoritmo Idade 
Declare I,idade,acumulador,media: real 
Início 
acumulador 0 
Para I 0 até 10 faça 
Início 
Leia idade 
acumulador acumulador+idade 
Fim 
Media=acumulador/10 
Escreva media 
Fim 
3. Faça um algoritmo que receba a idade de dez pessoas e que calcule e mostre: 
 a quantidade de pessoas com idade maior ou igual a 18 anos. 
 Média de todas as idades. 
 
Algoritmo Idade 
Declare contar_idade,I,idade,acumulador,media: real 
Início 
contar_idade 0 
acumulador 0 
 
Para I 0 até 10 faça 
Início 
Leia idade 
Se idade>=18 entao 
 contar_idade contar_idade+1 
acumulador acumulador+idade 
Fim 
Media=acumulador/10 
Escreva contar_idade,media 
Fim 
 
Exercícios 
1. Uma loja tem 15 clientes cadastrados e deseja enviar uma correspondência a 
cada um deles anunciando um bônus especial. Faça um algoritmo que leia o 
Lógica de Programação 20 
código do cliente e o valor de suas compras no ano passado. Calcule e mostre 
um bônus de 10% se o valor das compras for menor que R$ 1.000,00 e de 15%, 
caso contrário. 
 
2. Faça um algoritmo que receba a idade de 15 pessoas e que calcule e mostre a 
quantidade de pessoas em cada faixa etária; 
 
 
 
 
 
 
 
 
 
3. Faça um algoritmo que receba 15 números e que calcule e mostre: A quantidade de números inferiores a 35; 
 A média dos números positivos; 
 
 
 
 
 
FAIXA ETÁRIA IDADE 
1º Até 15 anos 
2º De 16 a 30 anos 
3º De 31 a 45 anos 
4º De 46 a 60 anos 
5º Acima de 61 anos

Continue navegando