Você está na página 1de 99

Dados do Aluno

Nome: _________________________________________________
Número da matrícula: _____________________________________
Endereço: ______________________________________________
Bairro: _________________________________________________
Cidade: ________________________________________________
Telefone: _______________________________________________
Anotações Gerais: ________________________________________
_______________________________________________________
_______________________________________________________

Lógica de Programação
Apresentação da Lógica de Programação
O curso de Lógica de Programação visa introduzir o aluno ao
pensamento lógico, etapa importante para iniciar o aprendizado de u-
ma linguagem de programação de computadores. Hoje em dia, inde-
pendentemente da linguagem a ser aprendida, será necessário utili-
zar os conceitos básicos de lógica de programação.
O curso de Lógica de Programação irá preparar o aluno a en-
tender os princípios básicos de uma linguagem de programação, co-
mo Entrada, Processamento e Saída, a trabalhar com estudo de vari-
áveis, análise de códigos através de Breakpoints, operações relacio-
nais, estruturas de decisão e de repetição.
Depois de concluído o curso, você já terá conhecimentos de al-
goritmos e conseguirá aplicar os conhecimentos adquiridos em uma
linguagem de programação.

Marcas Registradas:
Todas as marcas e nomes de produtos apresentados nesta apostila
são de responsabilidade de seus respectivos proprietários, não estan-
do a editora associada a nenhum fornecedor ou produto apresentado
nesta apostila.

Método CGD® - Todos os direitos reservados.


Protegidos pela Lei 5988 de 14/12/1973.
Nenhuma parte desta apostila poderá ser copiada sem prévia autorização.
O Método CGD é um produto da Editora CGD.
Controle de Presença

Data Módulo e Passo Anotações

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________

____/____/_____ ___________ ________________


Apostila de Lógica de Programação
Índice
MÓDULO 1 - INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO .........................................7
● CONHECENDO O PROGRAMA VISUALG .........................................................................7
● O QUE É SOFTWARE? ...............................................................................................7
● COMO ESCREVER UM SOFTWARE ................................................................................8
● O QUE É ALGORITMO? .............................................................................................8
● LINGUAGEM PSEUDOCÓDIGO......................................................................................9
● SINTAXE DO PROGRAMA VISUALG .............................................................................10
● ESCREVENDO ALGORITMOS ......................................................................................13
MÓDULO 2 - ESCREVENDO ALGORITMOS ................................................................. 21
● COMANDOS: ESCREVA E LEIA ...................................................................................21
● COMANDO ESCREVA: CONCATENAR ...........................................................................28
● UTILIZANDO VARIÁVEIS E O QUADRO DE VARIÁVEIS .....................................................30
● BREAKPOINT ..........................................................................................................37
● VARIÁVEIS: TIPOS DE DADOS ....................................................................................43
MÓDULO 3 - ESTRUTURAS DE DECISÃO .................................................................... 47
● ESTRUTURAS SEQUENCIAIS .......................................................................................47
● ESTRUTURAS DE DECISÃO ........................................................................................47
● ESTRUTURAS DE DECISÃO: CONDICIONAL SIMPLES - SE .................................................48
● ESTRUTURAS DE DECISÃO: CONDICIONAL COMPOSTA - SE-SENÃO ................................50
● OPERADORES RELACIONAIS ......................................................................................53
● ESTRUTURAS DE DECISÃO: CASO..............................................................................54
MÓDULO 4 - OPERADORES LÓGICOS ......................................................................... 58
● OPERADORES LÓGICOS ............................................................................................58
● OPERADOR LÓGICO DO TIPO OR...............................................................................58
● OPERADOR LÓGICO DO TIPO AND ............................................................................69
● OPERADOR LÓGICO DO TIPO NOT .............................................................................73
MÓDULO 5 - ESTRUTURAS DE REPETIÇÃO ................................................................. 77
● ESTRUTURAS DE REPETIÇÃO .....................................................................................77
● ESTRUTURA DE REPETIÇÃO ENQUANTO... FAÇA ...........................................................80
● ESTRUTURA DE REPETIÇÃO PARA-ATÉ-FAÇA ...............................................................89
● QUAL ESTRUTURA DE REPETIÇÃO USAR? ....................................................................96
Módulo 1 - Introdução à Lógica de Programação
● Conhecendo O Programa VisuAlg

• Clique no botão Iniciar do Windows


● Localize o grupo de programas Apoio Informática.

• Abra o programa
● Verifique se o programa foi aberto com sucesso.

• Feche o programa VisuAlg

● O Que É Software?

● Software é uma sequência de instruções a serem seguidas e/ou execu-


tadas, na manipulação, redirecionamento ou modificação de um dado/in-
formação ou acontecimento. Software também é o nome dado ao com-
portamento exibido por essa sequência de instruções quando executada
em um computador ou máquina semelhante, além de um produto de-
senvolvido pela Engenharia de software, e inclui não só o programa de
computador propriamente dito, mas também manuais e especificações.
Lógica de Programação 7
● Como Escrever Um Software

● Normalmente, programas de computador são escritos em linguagens de


programação, pois estas foram projetadas para aproximar-se das lingua-
gens usadas por seres humanos. Atualmente existe uma quantidade
muito grande de linguagens de programação, dentre elas, as mais popu-
lares no momento são Java, Visual Basic, C, C++, PHP, dentre ou-
tras.
● Um software precisa reproduzir a ideia gerada por um ser humano, ou
seja, sua execução vai depender de um conjunto de informações ordena-
das, para que ele possa ter um resultado final.

● O Que É Algoritmo?

● Um algoritmo é uma sequência de instruções bem definidas, cada uma


das quais pode ser executada mecanicamente num período de tempo fi-
nito. Ele representa um conjunto de regras para a solução de um proble-
ma.

• Exemplo:
8 Lógica de Programação
• No exemplo da receita, a correta execução das instruções vai resultar na
preparação do bolo para o consumo.

• Para um programa de computador, o efeito será o mesmo. O programa


deve possuir um algoritmo ordenado, para que o computador processe
as informações na ordem especificada e possa apresentar o resultado
proposto pelo seu programa.

• Veja agora um exemplo de algoritmo para ser implementado em um


programa de computador:

• No exemplo:

• 1. O programa irá receber 2 números.

• 2. Em seguida, vai ocorrer um processamento: que é a soma dos núme-


ros recebidos.

• 3. E, por final, será apresentado na tela o resultado da soma dos núme-


ros.

• Seguindo as instruções fornecidas pelo algoritmo, o programa (software)


vai apresentar o resultado desejado na tela.

● Linguagem Pseudocódigo

● Pseudocódigo é uma forma genérica de escrever um algoritmo. No cur-


so, utilizamos o programa VisuAlg para escrever algoritmos em pseudo-
código.
● A linguagem que o VisuAlg interpreta é bem simples: é uma versão
portuguesa dos pseudocódigos largamente utilizados nos livros de intro-
dução à programação, conhecida como "Portugol".
● Acesse novamente o programa VisuAlg.

Lógica de Programação 9
● Quando o programa é aberto, um novo algoritmo será criado dentro de-
le.

● Sintaxe Do Programa VisuAlg

● A sintaxe de uma linguagem de programação é a forma como os seus


comandos devem ser escritos.
● Por exemplo, para escrever uma mensagem na tela, use o comando es-
creva:

● Altere a palavra "escreva" para "mostre":

• Clique no botão Executar ou tecle F9


● Quando utilizamos o botão Executar, estamos ordenando ao VisuAlg
para que ele interprete o algoritmo.

10 Lógica de Programação
● Para que o algoritmo seja interpretado, ele deve estar livre de erros de
sintaxe (erros de escrita).
● Ao executar o algoritmo o programa encontrou um erro:

● Esse é um problema de sintaxe.


● O comando "mostre" não existe para o VisuAlg. O comando correto é o
"escreva".

• Clique no botão
● Clique no botão OK.

● Altere novamente a linha para o comando escreva:

• Clique no botão Executar ou tecle F9

● O resultado foi apresentado corretamente:

• Feche a janela do resultado:


● Vamos ver mais um exemplo de erro de sintaxe.

Lógica de Programação 11
● Remova as apas que existem na mensagem:

● Fica assim:

• Execute o programa
● Novamente um erro de sintaxe aconteceu:

● O programa lhe indica, também, em qual linha o problema está:

● E dentro do campo, ele mostra o conteúdo da linha com erro:

• Clique no botão
● Clique no botão OK.

● Adicione novamente as aspas.

12 Lógica de Programação
● Escrevendo Algoritmos

● Um algoritmo sempre executa sua sequência de comandos do início até


o fim, de maneira sequencial.

● Pode-se dizer que o algoritmo não está vinculado a programas de com-


putador. Ele pode ser um conjunto de ações do seu cotidiano, como po-
de ser também um conjunto de instruções organizadas que formam uma
parte do programa de computador.
● Exemplo de algoritmo não computacional:

● Note que, antes de executar o algoritmo, temos as "entradas" dele, que


são os ingredientes da receita. Logo, sem os ingredientes, não iremos
conseguir executar a receita. A receita só pode existir caso você possua
as "entradas", ou seja, caso possua os ingredientes.

Lógica de Programação 13
• Crie um arquivo no VisuAlg

● Na mensagem para salvar, clique no botão Não.


● O programa criou um algoritmo padrão, somente com a estrutura:

● Criaremos o seguinte algoritmo:

● Quando o usuário precisa entrar com dados, estes precisam ser guarda-
dos em algum local. Em nosso caso, guardaremos em variáveis na me-
mória do computador.

14 Lógica de Programação
● De acordo com o algoritmo, o usuário deverá informar 2 números intei-
ros.
● Esse algoritmo possui começo, meio e final.
● Começo: Quando ele recebe os 2 números.

● Meio: É o chamado processamento -> efetuar a soma de número 1 +


número 2.
● Final: É a apresentação do resultado na tela para o usuário.
● Declare as variáveis no local indicado:

● Foram digitadas 3 variáveis. Elas serão utilizadas para receber e apre-


sentar o resultado na tela.

• Deixe o cursor ativo na seção de comandos:


● Programe a exibição da mensagem ao usuário e receba o valor do pri-
meiro número:

● O comando leia recebe um valor fornecido pelo usuário, que será guar-
dado na variável numero1.

• Execute o programa

Lógica de Programação 15
● Observe o resultado (a mensagem está exatamente como foi digitada):

• Digite "10" e tecle Enter


● Ao teclar Enter, o programa foi encerrado.

● O programa foi encerrado, pois o algoritmo chegou ao seu final.

● Feche a janela de execução do programa.

16 Lógica de Programação
● Continuando a ideia do algoritmo, o próximo passo é o seguinte:

• Digite:

● Foi criado o código para que o programa receba o segundo número.


● Confira seu código e fique atento à diferença destacada:

● Primeiro o programa recebe e guarda o valor na variável numero1. Em


seguida, recebe o valor e guarda na variável numero2.

• Execute o programa

• Foi exibida a mensagem:

Lógica de Programação 17
• Digite "10" e tecle Enter
● O programa exibiu a segunda mensagem:

● O programa está seguindo a ordem sequencial do código:

• Digite "20" e tecle Enter

● Ao teclar Enter o programa é encerrado conforme sequência do código.


● Feche a janela de execução do programa.
● Agora entramos na etapa final do algoritmo.

18 Lógica de Programação
● Nosso programa já recebe os dois números do usuário. Resta agora rea-
lizar o processamento dessa informação e exibir o resultado, conforme a
proposta do algoritmo.

• Digite:
● A variável resultado é definida antes do programa ser executado.e
recebe a soma das variáveis numero1 e numero 2.
● O símbolo <- indica que o valor está sendo recebido.
● Confira o seu algoritmo:

• Execute o programa

● Foi exibida a mensagem:

• Digite "10" e tecle Enter


Lógica de Programação 19
● O programa exibiu a segunda mensagem:

● Digite "20" e tecle Enter


● Confira o resultado:

● Feche a janela de execução do programa.


● Note que a execução do programa terminou. Isso aconteceu porque o al-
goritmo chegou ao final, não existindo mais linhas a serem executadas.
● Vamos salvar o algoritmo para não perder o trabalho feito até agora.
● Crie uma pasta chamada "algoritmos", no seu local de gravação.

• Clique no botão Salvar

20 Lógica de Programação
• Escolha para gravar dentro da pasta que você criou:
● Deixe o nome do arquivo como "Primeiro".

● Clique no botão Salvar.


● A barra de título do programa mostra o nome do arquivo que foi grava-
do:

Módulo 2 - Escrevendo Algoritmos


● Comandos: Escreva E Leia

● O comando escreva é utilizado para mostrar a "saída" de algum proces-


samento. Essa saída pode ser uma mensagem para o usuário, como
pode ser o resultado de algum cálculo efetuado pelo programa. Para uti-
lizar o comando escreva não é obrigatório utilizar variáveis.
● Abra o programa VisuAlg.

• Crie um arquivo

Lógica de Programação 21
● Digite no local indicado:

● O comando escreva precisa das aspas para indicar o início e o final do


texto:

● Além das aspas, o comando escreva também precisa dos parênteses


para indicar o que será escrito.

• Execute o seu algoritmo


● Resultado:

● A saída apresentada foi uma única linha de texto. Todos os textos foram
colocados na mesma linha.
● Feche a janela de execução do programa.

● Para quebrar uma linha a cada texto, podemos usar o comando escre-
val. O comando escreval (com L) acrescenta uma linha ao final da saí-
da.

● A última linha não precisa do escreval, pois não há mais texto a ser
mostrado após a mesma.

22 Lógica de Programação
• Execute o seu algoritmo
● Resultado:

● Feche a janela de execução do programa.


● Para espaçamento do texto podemos criar linhas em branco.

● Altere seu algoritmo:

● Utilizamos o comando escreval com aspas vazias para criar linhas em


branco na mensagem ao usuário.

• Execute o seu algoritmo

● Resultado:
● Feche a janela de execução do programa.

Lógica de Programação 23
• Crie um arquivo

● Digite no local indicado:

● O comando escreva escreve o conteúdo de um texto que está entre as


aspas.
● Se utilizar o comando escreval (com L no final), esse texto ganhará um
"Enter" (quebra de linha) ao final.
● Também podemos escrever o conteúdo de uma variável. Para isso não
se podem utilizar aspas.
● Declare a variável no local indicado:

● Uma variável do tipo caractere é utilizada para armazenar dados do ti-


po texto (letras, números e símbolos).
● Altere o código e deixe assim:

● Essa linha indica que a variável chamada nome vai receber o valor "Au-
gusto Pinho".

24 Lógica de Programação
• Execute o seu algoritmo
● Resultado:

● Feche a janela de execução do programa.

• Altere o valor da variável:

● Execute o seu algoritmo

● Resultado:

● Feche a janela de execução do programa.

• Crie um novo algoritmo no VisuAlg


● Implementaremos o comando leia.
● A função do comando leia é armazenar um valor digitado dentro de uma
variável.
● Declare as variáveis no local indicado:

Lógica de Programação 25
● Digite no local indicado:

● Primeiro o sistema irá mostrar a mensagem: "Digite seu nome".


● Em seguida, irá aguardar que o usuário informe um nome e tecle Enter.

● O nome informado pelo usuário ficará armazenado na variável nome, a-


través do comando leia.
● Execute o seu algoritmo.

• Resultado:
● O programa aguarda que o usuário informe um nome.
● Informe o seu nome e tecle Enter.

• O resultado deverá ser parecido com este:


● O nome aparece duas vezes, porque ele é digitado e, logo em seguida, é
mostrado:

26 Lógica de Programação
● Feche a janela de execução do programa.

● Agora iremos receber as outras duas variáveis.

• Crie o código:
● Note que primeiro o sistema irá exibir a mensagem e, em seguida, ar-
mazenar o valor informado.

• Execute o seu algoritmo

• Preencha com os seus dados:

• O resultado será parecido com este:


● Feche a janela de execução do programa.

Lógica de Programação 27
● Comando Escreva: Concatenar

● Vamos melhorar a exibição do resultado, concatenando os resultados.


● Em programação, concatenar é o nome dado para juntar termos. Vere-
mos agora como concatenar duas ou mais variáveis.
● Para concatenar, utilizamos o comando escreva ou escreval.

● Remova do código os comandos de saídas de dados:

● Usando o recurso concatenar, deixaremos o resultado assim:

● Digite a saída de dados:

● As vírgulas separam o texto comum das variáveis:

Execute o seu algoritmo

28 Lógica de Programação
• Preencha com os dados:
● Resultado:

● Usando o recurso de concatenar (juntar), conseguimos juntar em uma


única linha o valor de um texto e de 3 variáveis.

● Ainda existe um problema: os dados ficaram "grudados" no resultado.


Precisamos criar um espaçamento entre as variáveis, na saída.
● Feche a janela de execução do programa.
● Crie os espaços em branco no código:

• Execute o seu algoritmo

• Preencha com os dados:

• Resultado:
● Feche a janela de execução do programa.

Lógica de Programação 29
● Utilizando Variáveis E O Quadro De Variáveis

• Crie um algoritmo no VisuAlg


● Quando o usuário precisa "entrar com dados", esses dados devem ser
gravados em algum local. Em nosso exemplo, ficará na memória do
computador. Para isso, existem as chamadas variáveis. Uma variável é
um espaço criado na memória do computador, onde é possível gravar e
ler os dados.
● Com os valores armazenados nas variáveis podemos efetuar o processa-
mento da informação, e, em seguida, devolver ao usuário o resultado de
um cálculo ou de qualquer outra operação.
● Vamos criar o seguinte algoritmo:

● O objetivo do algoritmo é saber o salário final do funcionário.

● Para isso, iremos receber 3 valores: salário, comissão e desconto.

30 Lógica de Programação
● Para que possamos receber os três valores, crie as 3 variáveis no local
destinado às variáveis:

● Crie o código para o seguinte trecho do algoritmo:

● Fica assim:

● Salve o seu algoritmo com o nome de VariavelPratica.alg, dentro da


pasta algoritmos, em seu local de gravação.

Lógica de Programação 31
● Agora o programa precisa efetuar o seguinte cálculo:


● Para efetuar este cálculo precisaremos de uma 4ª variável. Ela irá arma-
zenar o resultado da operação.

• Declare a variável no local indicado:


● Sempre que for utilizar uma variável no programa VisuAlg, ela precisa
ser declarada antes da execução do programa. Na maioria das lingua-
gens de programação as variáveis também são declaradas antes da exe-
cução do programa.
● A variável resultado deverá receber o seguinte valor:

● Crie o código:

● A variável resultado já contém o valor desejado. Resta agora exibir o


resultado para o usuário.

● Crie o código:

32 Lógica de Programação
● Confira o seu código:

• Execute o seu algoritmo

• Informe os dados:
● Confira o resultado:

● Feche a janela de execução.


● Veremos agora o quadro de variáveis.
● O quadro de variáveis se localiza no canto inferior esquerdo do progra-
ma.

Lógica de Programação 33
● O quadro de variáveis exibe as variáveis que foram declaradas no algo-
ritmo.

● Nele estão listadas todas as variáveis que foram declaradas no algorit-


mo:

● O quadro de variáveis serve para que possamos acompanhar o valor de


cada variável do algoritmo, durante o tempo de execução do mesmo.

• Execute o seu algoritmo

● Não informe dados ainda. Verifique que o programa fica aguardando a


entrada de dados:

34 Lógica de Programação
● Verifique que o quadro de variáveis fica todo zerado:

● Informe os valores, e, a cada valor informado, acompanhe o quadro de


variáveis.
● Isso é muito útil quando queremos identificar possíveis problemas na es-
trutura de um algoritmo, pois quando se executa o algoritmo passo a
passo, conseguimos identificar o comportamento de cada variável.
● Ex.: Digite "100" e tecle Enter.
● Observe o quadro de variáveis. A variável salario agora possui o valor
100:

● Enquanto isso o programa está parado, aguardando a entrada de dados:

● Digite "10" e tecle Enter.


● Observe que a variável comissao agora possui o valor 10 no quadro de
variáveis:

Lógica de Programação 35
● As variáveis desconto e resultado ainda não foram usadas; permane-
cem com o valor 0.

● Digite "2" e tecle Enter.

● A variável desconto recebeu o valor 2:

● O resultado foi apresentado na tela:

● Observe, no quadro de variáveis, que a variável resultado armazenou


o resultado da operação:

● Feche a janela de execução do programa.

36 Lógica de Programação
● Breakpoint

● Vamos fazer uma alteração no código do programa e identificar o erro a-


través do quadro de variáveis
● Selecione e recorte a linha:

● Cole-a no local:

● Movemos a linha que contém o resultado do cálculo logo para o início do


programa. Com isso, a variável de resultado não vai ter os valores de:
salario, desconto e comissao.
● Confira o seu código:

Lógica de Programação 37
● Clique sobre a linha da variável resultado para deixar o cursor ativo.

● Tecle F5.
● Fica assim:

● Essa linha que apareceu na cor vermelho escuro é o chamado Break-


point. Um breakpoint indica que o programa deve parar na linha sele-
cionada.
● Vamos verificar a execução do programa passo a passo.

● Tecle F9 para executar o seu algoritmo.

● O programa iniciou com a tela vazia:

● No momento inicial da execução, todas as variáveis estão zeradas:

38 Lógica de Programação
● O programa está parado na linha que contém o Breakpoint:

● A primeira operação a ser feita será atribuir um valor para a variável re-
sultado.
● Clique na janela de execução do programa e tecle F8.
● O programa avançou para a próxima linha de execução.

● A linha que contém o cálculo do resultado já foi executada.

● Note que a variável resultado continua vazia:

● Com isso, identificamos um erro no programa. A variável resultado


sempre ficará vazia, pois ela tenta somar os valores de salario + co-
missao – desconto.
● Porém as 3 variáveis ainda não foram informadas pelo usuário.

● Clique na janela de execução do programa e tecle Ctrl+F2.


● Feche a janela de execução do programa.

● Utilizando o recurso de Breakpoint e com o auxílio do quadro de variá-


veis, verificamos onde está o erro do programa. Esse processo de execu-
tar um programa com um ponto de parada (Breakpoint) também é co-
nhecido como "debugar" o programa, ou seja, vasculhar a execução pas-
so a passo a procura de erros.

Lógica de Programação 39
● Utilize sempre o quadro de variáveis para analisar as mudanças nos va-
lores das variáveis. Assim você irá encontrar mais facilmente o problema
no programa.
● Clique na linha que está com a cor vermelho escuro.

● Tecle F5.

● Selecione e recorte a linha:

● Cole-a no seguinte local:

● Confira o seu código:

● Agora a variável resultado está no local correto.

• Salve as alterações do seu algoritmo

40 Lógica de Programação
● No VisuAlg, abra o arquivo Subtrair.alg, que está na pasta de mode-
los:

● Salve o seu algoritmo com o nome "Subtrair.alg", dentro da pasta al-


goritmos, no seu local de gravação.

● Na seção var estão as 3 variáveis declaradas no programa:

● As 3 variáveis são do tipo inteiro, ou seja, aceitam apenas números in-


teiros.
● O programa é bem simples, solicita e armazena 2 números.

Lógica de Programação 41
● Cada número é armazenado em uma variável diferente:

● A variável final recebe o valor da operação: numero1 menos numero-


2:

● E por final a variável final é escrita na tela:

● Tecle F9 para executar o seu algoritmo.

● Entre com os valores 50 e 20 e tecle Enter para executar o algoritmo.

• Confira o resultado:
● Feche a janela de execução do programa.
● Efetuou a operação: numero1 (50) menos numero2 (20) e resultou no
valor 30.
● Tecle F9 para executar novamente o seu algoritmo.

42 Lógica de Programação
• Entre com os valores 10 e 100:

• Confira o resultado:
● Feche a janela de execução do programa.
● Efetuou a operação: numero1 (10) menos numero2 (100) e resultou
no valor -90.
● Mesmo sendo um valor negativo, -90 continua sendo um número intei-
ro.

● Variáveis: Tipos De Dados

● Em nosso programa temos 4 variáveis definidas:

● Essas 4 variáveis são do tipo inteiro.


● Isso indica que elas podem armazenar números inteiros, ou seja, sem
casas decimais.
● Execute o seu algoritmo.
● Para o salário informe 120,55 e tecle Enter.

Lógica de Programação 43
● O VisuAlg irá retornar um erro.

● O erro acontece porque o VisuAlg esperava um valor do tipo inteiro.


Valores inteiros não permitem casas decimais (casas depois da vírgula).

• Na tela do erro, clique no botão

● Clique no botão OK.


● A linha que gerou o erro fica destacada na cor vermelha:

● Quando estamos prevendo a execução de um programa, devemos pre-


ver também qual o tipo de dados a variável vai receber.

● Por exemplo: se você deseja que o usuário informe o "nome da pessoa",


a variável nome deverá ser do tipo caractere; não poderá ser do tipo
inteiro.
● Em nosso programa, estamos tratando de salário. Logo, as variáveis de-
vem ser preparadas para receber dados do tipo real. O tipo de dados
real aceita valores decimais.
● Existem centenas de linguagens de programação. Cada uma delas possui
uma estrutura para o tipo de dados das variáveis. Então, quando você
começar a estudar uma determinada linguagem de programação é inte-
ressante procurar pelos tipos de dados aceitos naquela linguagem. Isso
é uma variação que vai existir de linguagem para linguagem.
● Altere o tipo de dados das 4 variáveis para o tipo real:

44 Lógica de Programação
● O tipo real define variáveis numéricas do tipo real (com casas deci-
mais).
● Tecle F9 para executar o seu algoritmo.
● Para o salário, digite "120,55" e tecle Enter.

● O programa avançou e já solicita o próximo valor:

● No quadro de variáveis, a variável recebeu o valor corretamente:

● Informe os outros 2 valores ao programa:

● Confira o resultado:

Lógica de Programação 45
● Feche a janela de execução do programa.

● Salve as alterações do seu algoritmo.


● No programa VisuAlg, que estamos utilizando para o aprendizado, são
suportados 4 tipos de dados para as variáveis:

● Para evitar problema com o tipo de dados das variáveis, é sempre útil
consultar a tabela de operações aritméticas. Através dela, conseguimos
visualizar qual o tipo de dados mais recomendado para cada operação.

46 Lógica de Programação
Módulo 3 - Estruturas de Decisão
● Estruturas Sequenciais

● Em ciência da computação, uma estrutura sequencial é uma estrutura de


desvio do fluxo de controle presente em linguagens de programação,
que realiza um conjunto predeterminado de comandos de forma sequen-
cial, de cima para baixo, na ordem em que foram declarados. (Fonte:
Wikipédia, a enciclopédia livre.)
● Todos os algoritmos que construímos até o momento são estruturas se-
quenciais.
● O algoritmo começa do ponto inicio e executa todos os comandos até
encontrar o fim do algoritmo.

● Dessa forma, todos os comandos escritos no código são executados, um


a um, de cima para baixo.

● Estruturas De Decisão

● As estruturas de decisão permitem que o programa tome uma decisão


no código, isto é, de acordo com uma condição. O programa faz um tes-
te e, de acordo com o resultado desse teste, saberá qual o caminho de-
verá ser seguido.

● Pensando em uma situação prática: Se uma loja deseja oferecer descon-


to de R$99,00 para compras acima de R$400,00, mas se a compra for
menor que R$400,00 o desconto não irá ocorrer.

Lógica de Programação 47
● Confira a representação gráfica da decisão:

● O programa obtém o resultado da expressão lógica. A expressão lógica é


a seguinte: "O preço do produto é maior que 400?".
● Se Verdadeiro: então o Desconto passa a ser de R$ 99,00.
● Senão (Falso): então o Desconto passa a ser de R$ 0,00.

● Pensando no código do algoritmo, ficaria assim:

● Estruturas De Decisão: Condicional Simples - SE

• Crie um algoritmo no VisuAlg

• Declare a variável nome, de tipo caractere, no local apropriado:

48 Lógica de Programação
● Digite o código:

● Lembre-se: Ao utilizar o sinal <- estamos indicando uma atribuição.


● No algoritmo existe um desvio no código, onde somente se o nome for
Pedro este trecho será executado:

• Execute o seu algoritmo

• Resultado:
● A mensagem foi exibida, pois o nome foi definido como Pedro.

● Feche a janela de execução do seu programa.

• Altere o valor da variável nome para Maria

• Execute novamente o seu programa

Lógica de Programação 49
• Resultado:
● O trecho do código não foi executado:

● O trecho é executado somente SE atingir a condição imposta (se o nome


for igual a Pedro).

● Caso o nome não seja Pedro o programa pula o conteúdo que está den-
tro da condição se e continua do ponto seguinte.

● Feche a janela de execução do programa.

● Estruturas De Decisão: Condicional Composta - SE-SENÃO

● Altere o seu algoritmo:

● Dessa forma, se o aluno for Pedro, será exibida uma mensagem. Se for
diferente de Pedro, mostrará uma mensagem diferente e só depois se-
guirá com o restante do código.

• Crie um novo algoritmo utilizando o botão Novo


50 Lógica de Programação
● Declare uma variável chamada estado. O tipo da variável deve ser ca-
ractere.

● Nosso algoritmo vai testar o seguinte: Se o estado informado for "RJ",


vai oferecer uma mensagem; senão for RJ, então vai oferecer uma se-
gunda mensagem.
● Crie um algoritmo que faça o seguinte:

• Fica assim:
● Digite:

● Vamos testar a execução para ver a diferença desse algoritmo para os


anteriores.

Lógica de Programação 51
● Execute o seu algoritmo.

● Digite o estado "RJ" e tecle Enter.

● O programa exibiu o resultado:

● Podemos dizer então que o programa fez essa parte da condição:

● SE o estado for igual a RJ, então mostre a mensagem de desconto.


● Feche a janela de execução do programa.
● Execute novamente o seu algoritmo.

● Digite o estado "SP" e tecle Enter


● O programa exibiu o resultado:

• O programa testou a condição:


● Como o estado digitado não foi "RJ", ele executou o desvio "senão".

52 Lógica de Programação
● A representação gráfica da condição SE composta:

● Nesse tipo de decisão, o programa tem 2 caminhos a tomar. Tudo vai


depender do teste Lógico, que neste exemplo é se o "estado = RJ".
● SE o resultado do teste for VERDADEIRO, vai por um caminho.
● SENÃO, SE o resultado for FALSO, vai pelo outro caminho.
● Feche a janela de execução do programa.

● Operadores Relacionais

● Através dos operadores relacionais é possível realizar as comparações


entre dois valores.
● Exemplo: Comparamos se a variável nome era igual a Pedro (nesse ca-
so, a variável nome era o primeiro valor e o "Pedro" era o segundo va-
lor).
● Veja, abaixo, a lista de operadores relacionais:

Lógica de Programação 53
● As comparações efetuadas através dos operadores relacionais sempre
retornam valor verdadeiro ou falso.

• Ex.:
● Devido a retornarem sempre valor verdadeiro ou falso, devemos utilizar
sempre os operadores relacionais para criar estruturas de decisão em
nosso código, adequando o operador a cada caso concreto.

● Estruturas De Decisão: CASO

● Utilizando a estrutura CASO, podemos determinar vários caminhos, que


serão escolhidos através de uma expressão. Por exemplo: podemos
deter-minar que o programa escolha qual caminho seguir, dependendo
de um número informado, o usuário poderia ter 5 ou "n" caminhos
diferentes.
● Essa estrutura deve ser utilizada quando o código tiver muitas decisões
a serem tomadas, isto é, quando o código oferecer muitas opções de ca-
minhos. Por exemplo, imagine que cada mês informado poderia efetuar
um cálculo de desconto diferenciado, então usaríamos o Caso para tes-
tar os meses e decidir qual cálculo será apresentado.
● Tudo que é feito com a estrutura Caso também pode ser feita com a
condicional SE, porém cada estrutura SE tem que ficar aninhada dentro
de outra condicional SE, tornando o código muito extenso e de difícil
compreensão.
● A estrutura CASO também pode ser chamada de "escolha".
● Exemplo:

54 Lógica de Programação
• Crie um arquivo
● Será criado um algoritmo que receba um número de 1 até 7 e informe
qual é o nome do dia da semana.
● Digite o código para que o programa mostre uma mensagem e receba
um número:

● Através da estrutura Caso, o programa informará qual o dia da semana


correspondente com o número informado pelo usuário:

● Abaixo da leitura da variável digite:

● A variável que está sendo testada é a diasemana.

Lógica de Programação 55
● Cada valor da variável pode cair em um caminho diferente.

• Execute novamente o seu programa


● Teste com o valor 1:

● O programa testou o valor digitado e mostrou a mensagem programada:

● Feche a janela de execução do programa.

● Execute novamente o programa e teste com o valor 2.


● O programa mostrou o resultado esperado.

● Como o valor informado foi o 2, seguiu o caminho do valor 2:

56 Lógica de Programação
● Feche a janela de execução do programa.

● Execute novamente o programa e teste com o valor 5.


● Note o resultado:

● Quando o valor digitado não é previsto em cada um dos casos (não é 0 e


nem 1), o progra-ma cai no caminho "outrocaso".
● Feche a janela de execução do programa.
● Para treinar a estrutura do tipo Caso, crie "casos" para os demais dias
da semana:

● Efetue os testes do seu algoritmo para verificar os caminhos que o pro-


grama pode seguir.

Lógica de Programação 57
Módulo 4 - Operadores Lógicos
● Operadores Lógicos

● Os operadores lógicos são operações efetuadas com os valores boolea-


nos (true ou false (verdadeiro ou falso)). Esse tipo de operação é uti-
lizado nas condicionais SE e em estruturas de repetição, que ainda não
foram aprendidas neste curso.
● Aprenderemos no curso os operadores: AND, OR e NOT.

● Operador Lógico Do Tipo OR

● Um operador lógico do tipo OR realiza o teste simultâneo de duas condi-


ções. Através do teste, ele devolve "Verdadeiro" se pelo menos um dos
elementos for verdadeiro.
● O operador lógico OR também pode ser chamado de OU.
● Uma expressão OR é verdadeira se pelo menos uma condição for verda-
deira.
● Confira a tabela verdade do operador OR:

• Crie um arquivo
● Será criado um algoritmo que recebe a cor de um veículo. O algoritmo
irá tratar se a cor recebida é "branco" ou "preto". Se for uma dessas 2
cores, irá exibir a mensagem "O carro tem pintura básica".
● Declare uma variável chamada "cor" com o tipo de dados caractere:

● Essa variável irá armazenar a cor informada pelo usuário.

58 Lógica de Programação
● Crie os procedimentos para mostrar uma mensagem e ler o valor da va-
riável.

● Digite:

● Confira o seu código:

● Explicação da utilização do operador OR:

Lógica de Programação 59
● Nessa condicional os dois valores testados são:

● De acordo com a tabela verdade do operador OR, se a cor for branca ou


se a cor for preta a condição será verdadeira.
● Vamos testar o algoritmo para simular os valores.

● Tecle F9 para executar o seu algoritmo.

• O programa solicita a cor do veículo

● O quadro de variáveis ainda está sem valor para a variável cor:

• Digite "branco" e tecle Enter

• Exibiu o resultado:
● Como a cor informada foi "branco", ela atendeu à condicional, então re-
sultou em VERDADEIRO e apresentou o resultado "O carro tem pin-
tura básica".
● Feche a janela de execução do programa.
● Execute novamente o seu algoritmo.

• Digite "preto" e tecle Enter

60 Lógica de Programação
● O resultado foi exatamente igual ao anterior:

● Desta vez a cor informada foi "preto". A condicional testou, primeiro, se


era "branco". Como o resultado foi FALSO, testou se era "preto" e o
resultado foi VERDADEIRO.
● Com isso apresentou novamente a mensagem "O carro tem pintura
básica".
● O tipo de operador OR só retorna FALSO quando ambas as possibilida-
des forem FALSAS.

● Feche a janela de execução programa e execute novamente o seu algo-


ritmo.
● Digite "amarelo" e tecle Enter.

● Veja o resultado apresentado:

● Nesse teste, a cor informada foi "amarelo". Com isso, a cor não é
"branco" e também não é "preto", retornando FALSO como resultado.

Lógica de Programação 61
• Crie um arquivo

• Declare as duas variáveis:


● Crie os procedimentos para mostrar uma mensagem e ler o valor das
variáveis:

● Leia o programa proposto:

● Crie a condicional SE:

62 Lógica de Programação
● Confira o seu código:

● Vamos testar o algoritmo para verificar se a sintaxe dos comandos está


correta.
● Tecle F9 para executar o seu algoritmo.
● Entre com os valores e tecle Enter para visualizar o resultado:

• O resultado deve ser:


● A estrutura da condicional SE é a seguinte:

Lógica de Programação 63
● Note que cada condição está entre parênteses e que, separando as con-
dições, está o operador lógico do tipo OR (também conhecido como
OU).
● Como está usando o operador OR, vai seguir a tabela verdade:

● Feche a janela de execução do programa e execute o seu algoritmo.

● Quando você executa o algoritmo o quadro de variáveis inicia sempre


vazio, pois nada foi recebido ainda.

• Entre com os valores e tecle Enter


● O algoritmo apresenta o seguinte resultado:

● O quadro de variáveis mostra os valores que as variáveis possuem:

● O programa fez o seguinte teste:

64 Lógica de Programação
● Para satisfazer a condição, isto é, para que ela seja VERDADEIRA, a i-
dade deve ser igual a 18 OU o nome deve ser igual a "Bruno".
● Nos valores informados, ambas as condições são FALSAS:

● De acordo com a tabela verdade do operador OR, quando ambas as con-


dições são FALSAS, o retorno é sempre FALSO:

● Como o resultado dos testes foi FALSO, caiu na opção do senão:

● Na tela, o seguinte resultado:

● Feche a janela de execução do programa e execute o seu algoritmo.

• Simule com os seguintes valores:

Lógica de Programação 65
● O resultado deve ser "Acesso autorizado".

● Primeiro teste: idade é igual a 18? -> Resposta: SIM. Com isso, já re-
tornou o primeiro como VERDADEIRO.
● Segundo teste: nome é igual a "Bruno"? -> Resposta: NÃO. Com isso,
retornou o segundo como FALSO.
● Quando temos um retorno VERDADEIRO e o outro FALSO, o resultado
final é VERDADEIRO.

● Lembre-se: A condição precisa que um operando OU outro seja verda-


deiro. Se qualquer um deles for verdadeiro, ele já considera o resultado
como VERDADEIRO.
● Feche a janela de execução do programa e execute novamente o seu al-
goritmo.

• Simule com os seguintes valores:

● O resultado deve ser "Acesso autorizado".

66 Lógica de Programação
● Primeiro teste: idade é igual a 18? -> Resposta: NÃO. A idade é 21,
então retornou o primeiro como FALSO.
● Segundo teste: nome é igual a "Bruno"? -> Resposta: SIM. Com isso,
retornou o segundo como VERDADEIRO.
● Quando temos um retorno FALSO e o outro VERDADEIRO, o resultado
final é VERDADEIRO.

● Feche a janela de execução do programa e execute novamente o seu al-


goritmo.

• Simule com os seguintes valores:


● O resultado deve ser "Acesso autorizado".

● Feche a janela de execução do programa.


● Primeiro teste: idade é igual a 18? -> Resposta: SIM. Retornou o pri-
meiro como VERDADEIRO.
● Segundo teste: nome é igual a "Bruno"? -> Resposta: SIM. Retornou
o segundo como VERDADEIRO.
● Quando temos ambos como VERDADEIRO, o resultado final é VERDA-
DEIRO.

Lógica de Programação 67
● Altere o operador relacional para usar o sinal de menor (<):

● Agora o teste muda: irá testar se a idade é menor que 18 ou se o no-


me é "Bruno".

● Execute novamente o seu algoritmo.

• Simule com os seguintes valores:

• O resultado será:
● O número 30 não é menor que 18, resultando em Falso. O nome Car-
los não é igual a Bruno, também resultando em Falso.
● Feche a janela de execução do programa e execute novamente o seu al-
goritmo.

• Entre com os valores:

68 Lógica de Programação
● O resultado deve ser "Acesso autorizado".

● Utilize o operador OR quando quiser criar condições onde a situação per-


mita a escolha de "um OU outro" caso.
● Importante: Nos exemplos do operador lógico OR nós sempre fizemos
com apenas 2 condições. Nada impede que você construa códigos maio-
res, como por exemplo:

● Note que esse exemplo tem 3 condições sendo testadas. A tabela


verdade do operador OR vai continuar sendo igual. Se acontecer de uma
das condições serem verdadeiras, todo o resultado já é VERDADEIRO.
Só não será VERDADEIRO se as 3 condições testadas resultarem em
Falso.
● Feche a janela de execução do programa.

● Operador Lógico Do Tipo AND

● Um operador lógico do tipo AND realiza o teste simultâneo de duas con-


dições. Através do teste, ele devolve "Verdadeiro" somente se ambas
forem verdadeiras.
● O operador lógico AND também pode ser chamado de E.
● Uma expressão AND é verdadeira somente quando ambos os operandos
são verdadeiros.
● Confira a tabela verdade do operador AND:

● Crie um novo algoritmo.

Lógica de Programação 69
● O algoritmo receberá uma combinação de usuário e senha e irá verifi-
car se usuário e senha estão corretos. Caso ambos estejam corretos, o
programa irá autorizar o acesso do usuário.
● Declare as duas variáveis do tipo caractere:

● Lembre-se: o tipo caractere é utilizado para receber dados do tipo


texto (letras + números + símbolos).
● Crie os procedimentos para mostrar uma mensagem e ler o valor das
variáveis:

● Será criada agora uma condicional SE para testarmos o operador lógico


do tipo AND.
● Abaixo da leitura das variáveis, crie a condicional:

● A leitura da condicional fica assim:

● Nesse caso, o resultado somente será verdadeiro caso as duas condições


sejam atendidas.

70 Lógica de Programação
● Observe a estrutura da condicional com o operador AND:

● De acordo com a tabela verdade do operador AND, somente se o usuá-


rio for "sistema" E se a senha for "123" a condição será verdadeira.
● Execute o seu algoritmo.

● Entre com os valores e tecle Enter


● O resultado da condicional foi:

● O quadro de variáveis mostra o valor que as duas variáveis possuem:

● E foi feito o seguinte teste:

Lógica de Programação 71
● Ambos os valores fornecidos, resultaram em um resultado do tipo FAL-
SO, pois não atenderam às condições.
● De acordo com a tabela verdade do operador AND, quando ambas as
condições são FALSAS, o retorno é FALSO.

● Feche a janela de execução do programa e execute novamente o seu al-


goritmo.

• Entre com os valores e tecle Enter


● Novamente o acesso é inválido:

● Para o operador do tipo AND (e), o primeiro E o segundo devem ser


verdadeiros, caso contrário, sempre será falso.
● Nesse exemplo, apenas a primeira condição foi verdadeira, pois digita-
mos o usuário "sistema".
● De acordo com a tabela verdade, quando um deles é verdadeiro e o
segundo é falso, o resultado final é FALSO.

72 Lógica de Programação
● Agora vamos testar com os dados corretos, para que a condição seja a-
tendida.
● Feche a janela de execução do programa e execute novamente o seu al-
goritmo.

• Entre com os valores e tecle Enter

• Note o resultado:

• Para ambos retornando Verdadeiro, o resultado final é VERDADEIRO.

● Feche a janela de execução do programa.

● Operador Lógico Do tipo NOT

● Um operador lógico do tipo NOT é utilizado para realizar a negação de


um valor. Ele não possui uma tabela verdade aplicável, pois é mais sim-
ples. Esse operador apenas faz a negação de um valor.
● O operador lógico NOT também pode ser chamado de NÃO.
● Supondo que o teste A tem o valor false. Se utilizarmos: NOT A, então
A passa a ter o valor true.
● Declare a variável nome com o tipo caractere:

Lógica de Programação 73
● Digite o algoritmo:

● O algoritmo solicita e armazena o nome digitado pelo usuário.

● Em seguida, vem uma condicional do tipo SE Composta:

● Essa condicional apenas realiza o teste: SE o nome digitado for igual a


"Roberto" retorna a mensagem: "Condição verdadeira", senão, retor-
na a mensagem: "Condição falsa".
● Tecle F9 para executar o seu algoritmo.

● Digite o nome "Roberto" e visualize o resultado do processamento:

● A condicional foi verdadeira pois o nome informado atendeu ao valor tes-


tado.

74 Lógica de Programação
● Execute novamente e teste com o nome "Maria Flor".

● O resultado apresenta "condição falsa".

● O algoritmo está funcionando corretamente. Apenas o nome "Roberto"


vai retornar a condição como VERDADEIRA. Qualquer outro nome vai
resultar em FALSO.
● Vamos aplicar o operador lógico do tipo NOT.
● Feche a janela de execução do programa.

● Altere a linha da condição SE.

● Não se esqueça de acrescentar os parênteses:

● Importante: o operador NOT (não) é separado da palavra "se".


● Com a inclusão do operador NOT nós negamos toda a condição, isto é,
agora o teste pode ser lido assim: "SE não for nome="Roberto", en-
tão... será verdadeiro.
● Execute o seu algoritmo.
● Entre com o nome "Roberto" e visualize o resultado do processamento.

● O programa testou se o nome NÃO era Roberto.

Lógica de Programação 75
● Como digitamos "Roberto", então executou o desvio:

● Feche a janela de execução do programa e execute novamente o seu al-


goritmo.

• Digite "Francisco" e tecle Enter

• O resultado apresentado foi:


● Nós entramos com o nome "Francisco". O teste foi: SE NÃO FOR "RO-
BERTO" então escreva "Condição verdadeira".
● Feche a janela de execução do seu programa.
● Note que utilizando o operador lógico NOT é possível negar uma situa-
ção.
● Esse é um recurso muito utilizado em programação. Por exemplo, para
exibir a lista de clientes de uma loja. Essa listagem só pode ser exibida
caso o banco de dados NÃO esteja vazio. Se ele estiver vazio, nada será
mostrado.
● Sempre que for necessário fazer a negação de um valor de uma variável,
utilize o operador NOT (não).
● Ele sempre vai inverter o teste. Se era Verdadeiro, será Falso, e assim
por diante.

76 Lógica de Programação
Módulo 5 - Estruturas de Repetição
● Estruturas De Repetição

● Estruturas de Repetição são estruturas que proporcionam que um


mesmo bloco de código do algoritmo seja processado "n" vezes, de acor-
do com a necessidade estipulada.
● Uma estrutura de repetição possui sempre uma condição de controle, is-
to é, uma espécie de teste lógico que verifica se o bloco de código deve
ser repetido mais uma vez, ou o programa já pode encerrar a repetição.
● Crie um novo algoritmo.
● Será criado um exemplo para implementarmos estruturas de repetição.
Inicialmente o exemplo não vai conter estruturas de repetição.

• Digite:
● O algoritmo possui duas variáveis do tipo inteiro. Quando o programa
se inicia, elas recebem valores.

• Em seguida acontece uma operação:


● Execute o seu algoritmo.

Lógica de Programação 77
• O resultado foi apresentado:
● Feche a janela de execução do programa.
● Esse algoritmo é do tipo estrutura sequencial. Quantas vezes ele for exe-
cutado, sempre vai retornar o valor 6, até que se modifique a sua estru-
tura. Ele não possui estruturas para decisão (condicional SE) e, por isso,
o valor sempre será o mesmo.
● Nesse algoritmo, temos um valor inicial para a variável numero (vale
1). Em seguida, ele executa uma operação de soma, usando o valor da
variável soma (vale 5), logo 1 + 5 = 6.
● A linha que realiza a atribuição da soma é esta:

● Imagine que queremos repetir a operação de somar o valor 5 ao conteú-


do da variável numero. Essa repetição deverá ser feita 5 vezes.
● Logo, ao somar 5 vezes o valor 5, teremos um resultado final = 1 + 5 +
5 + 5 + 5 + 5 = 26.
● Feche a janela de execução do programa.

• Faça 4 cópias das linhas


● Agora temos 5 blocos de código que são idênticos.
78 Lógica de Programação
● Execute o seu algoritmo.

• O resultado final do algoritmo é 26


● Feche a janela de execução do programa e execute novamente o seu al-
goritmo.

• Novamente o resultado foi 26


● O programa continua sendo uma estrutura sequencial, ou seja, ele sem-
pre vai retornar o valor 26, pois não possui decisões no código.
● Demonstração do processamento do algoritmo:

● Feche a janela de execução do programa.

● Se você precisasse repetir esse cálculo por 200 vezes, teria de copiar/
colar 200 vezes o mesmo bloco, tornando o código muito extenso.

Lógica de Programação 79
● Estrutura De Repetição Enquanto... Faça

● Essa estrutura repete uma sequência de comandos enquanto uma deter-


minada condição (especificada através de uma expressão lógica) for sa-
tisfeita. Enquanto a expressão lógica for true (verdadeira) o bloco de co-
mandos será repetido e reiniciado ao início. O bloco só será interrompi-
do ou finalizado quando a expressão lógica for false (falso).
● Nessa estrutura devemos ter uma variável para controlar o incremento
do laço, a cada passagem dele. A variável do incremento deve ter seu
valor atualizado. É uma estrutura geralmente utilizada para exibir regis-
tros de banco de dados na tela ou para cálculos de valores.

• Apague algumas linhas e deixe assim:

• Crie uma nova variável chamada contador


● Essa variável será usada para controlarmos o número de vezes da repe-
tição.

• Digite o código:

80 Lógica de Programação
● Veja que a estrutura possui um início e um final:

● Todo bloco de código que estiver entre o início e o final da estrutura en-
quanto será repetido:

● A repetição acontece até que a condição da estrutura seja atingida.

● No exemplo acima, o laço irá se repetir enquanto a variável contador


for menor que 10.
● Essa é a linha mais importante da repetição:

● Ela é a chamada linha de incremento. Ela é quem faz com que, em cada
execução do laço, a variável contador some + 1 em seu valor. Se não
for colocado o incremento, o laço vai se repetir para sempre, sem nunca
terminar.

● No exemplo acima, sem a linha de incremento, o contador nunca atingi-


ria o valor 10 para parar de repetir.

Lógica de Programação 81
● Execute o seu algoritmo e visualize o resultado apresentado:

● Feche a janela de execução do programa.

● Só para não confundir: essas duas variáveis ainda não estão sendo usa-
das, elas apenas estão escritas no código.

● Altere a condição lógica para "contador < 20":

● O laço será executado enquanto a variável contador for Menor que 20.
● Execute novamente o seu algoritmo.

• O programa executou até o número 19

● A variável contador começa sempre com o valor = 0.


● O laço só termina quando a variável contador está com o valor = 21.

82 Lógica de Programação
● O laço obedece a seguinte condição: contador é menor que 20? Caso
seja verdadeiro, o laço é executado pela primeira vez. Durante sua exe-
cução, a variável contador soma + 1... e assim sucessivamente.
● Nesse momento o laço percebe que: contador é menor que 20?
Resulta em FALSO e encerra o laço.
● Feche a janela de execução do programa.

• Altere o incremento para 3


● Execute novamente o seu algoritmo.
● O laço apresenta poucos valores, pois o incremento foi de 3 a cada pas-
sagem:

● Quanto maior o incremento do laço, menor é o número de vezes que ele


é executado.

• Ex.:
Lógica de Programação 83
• Selecione e apague as seguintes linhas:
● Apague também as variáveis, deixando apenas esta:

• Código para conferência:


● Crie um novo algoritmo.
● Leia o programa proposto:

● A repetição será utilizada para que possamos somar 5 ao número infor-


mado pelo usuário.

• Declare uma variável do tipo inteiro


● Para implementar esse algoritmo iremos novamente utilizar a estrutura
de repetição chamada Enquanto...Faça.

84 Lógica de Programação
● Essa variável irá armazenar o valor que o usuário vai digitar.

● Crie o procedimento para mostrar uma mensagem e ler o valor da variá-


vel:

● Crie a estrutura de repetição Enquanto...Faça:

• Código para conferência:


● O programa irá solicitar ao usuário que ele informe um número:

● Em seguida, o algoritmo vai encontrar uma repetição do tipo Enquan-


to...Faça:

Lógica de Programação 85
● Para que o laço seja executado, é necessário que o número digitado a-
tenda a essa condição:

● O laço será executado enquanto a variável numero for menor ou igual


a 100.

● A estrutura do laço:

● Execute o seu algoritmo.

• Entre com o valor 50 e tecle Enter

• O resultado final do laço foi exibido:

● Feche a janela de execução do programa.


● Altere a linha que escreve a informação:

86 Lógica de Programação
● Execute novamente o seu algoritmo.

• Entre com o valor 63 e tecle Enter


● Visualize que os comandos foram repetidos:

● Note que, a cada mensagem na tela, incrementou +5 no valor da variá-


vel numero:

● Para visualizar a repetição acontecendo vamos simular outros valores.


● Feche a janela de execução do programa e execute novamente o seu al-
goritmo.
● Entre com o número -100 e tecle Enter. Em seguida, veja a repetição
acontecer na tela.

• O resultado será apresentado:


Lógica de Programação 87
● Utilize a barra de rolagem para visualizar como foi a execução do laço.

● Feche a janela de execução do programa.


● O algoritmo contém um erro.

● Teste o algoritmo com o número 70 e veja o resultado:

● No teste com o número 70, foi mostrado o número 100.


● Isso ocorreu pois o laço está testando a seguinte condição lógica:

● Feche a janela de execução do programa.


● Quando testado se é menor ou igual a 100, o número 100 também é e-
xibido.

• Altere o teste lógico do Enquanto:


● Execute novamente o seu algoritmo.
● Entre com o valor 70 e veja o novo resultado:

88 Lógica de Programação
● O laço só será executado enquanto o número for menor que 100. A par-
tir do momento que atinge 100 ou é maior que 100, ele encerra o laço.
● Feche a janela de execução do programa.

● Estrutura De Repetição Para-Até-Faça

● Essa estrutura repete uma sequência de comandos de acordo com os pa-


râmetros especificados. Os parâmetros vão orientar o "início" e o "final"
da repetição. Por exemplo, repetir um bloco de comandos de 1 até 10
(10 vezes). Nessa estrutura, o incremento é automático, isto é, não pre-
cisamos somar +1 no incremento, como na estrutura do Enquanto...
Faça.
● Nesse tipo de estrutura de repetição, é definido o valor de início e de fi-
nal da repetição. Nesse tipo, o incremento é feito de maneira automáti-
ca, através de uma variável do tipo "inteiro" que controla o avanço do
laço. Essa estrutura é mais indicada quando você já sabe quantas vezes
terá de repetir o código, por exemplo, calcular sempre algo que se repita
por 3 vezes.

● Crie um novo algoritmo.

• Digite:
● A variável j é do tipo inteiro. Ela irá controlar a execução dessa estrutu-
ra de repetição.
● O laço possui um início e um final:

● Os comandos que ficam no meio dele é que serão repetidos "n" vezes.
● O laço será executado com j iniciando com o valor 1 e indo até o valor
10.
Lógica de Programação 89
● O laço do tipo Para-Até-Faça faz o incremento sozinho, de 1 em 1.

● Execute o seu algoritmo.

• O resultado foi apresentado:


● Feche a janela de execução do programa.
● Nesse algoritmo, o laço se repete até que a variável j atinja o valor 10.

● Vamos usar um recurso do programa VisuAlg para executar o programa


em modo temporizado, assim você poderá visualizar o laço sendo execu-
tado, pausadamente.

• Ajuste o tempo do temporizador para:

• Clique no botão Executar com timer:


● Visualize o programa sendo executado, fique atento ao código sendo
repetido durante o laço.

• Exemplo:
90 Lógica de Programação
• Volte ao algoritmo e altere o código:
● Com isso a repetição será feita de 1 até 100.

● Execute novamente o seu algoritmo.

• O resultado foi apresentado:


● O laço iniciou no 1 e executou até atingir 100.
● Feche a janela de execução do programa.

● Ajuste para o laço executar de 1 até 500:

• Confira o resultado:

● Feche a janela de execução do programa.

Lógica de Programação 91
● Declare uma variável chamada "nome" com o tipo de dados caractere:

● Altere o código da estrutura Para-Até-Faça:

● O laço será repetido 3 vezes:

● A variável j é quem vai controlar o número de execuções. A cada execu-


ção, a variável j é automaticamente incrementada em +1 para que o la-
ço possa continuar.
● Execute novamente o seu algoritmo.

• Entre com o nome e tecle Enter

• Foi solicitado o segundo nome


● Entre com mais 2 nomes: "Maria" e "Fernanda".

92 Lógica de Programação
● Após digitar os 2 nomes, o resultado deverá ser o seguinte:

● A estrutura de repetição, ou laço, foi executada 3 vezes, de acordo com


os parâmetros do comando Para.
● Feche a janela de execução do programa.

● Dica: Utilize a estrutura de repetição Para-Até-Faça quando você já ti-


ver a certeza de quantas vezes um laço deve ser executado. Por exem-
plo, se você precisa construir um algoritmo que executa um cálculo por
duas vezes seguidas, então você pode usar o Para-Até-Faça.
● Crie um novo algoritmo.
● Crie o código assim:

● Como de costume, a variável j vai controlar as execuções da repetição.

● O laço irá se repetir de 1 até 200, ou seja, 200 vezes.

● A cada execução do laço, escreve na tela o valor atual da variável j:

● Execute o seu algoritmo.


Lógica de Programação 93
• Exibiu o resultado:
● O resultado apresentado está correto, executando de 1 até 200. Foram
executadas 200 vezes a mesma instrução. A cada uma delas, o valor da
variável j soma +1 e isso é escrito na tela.
● Vamos conhecer agora a instrução Passo.
● Feche a janela de execução do programa.
● A estrutura de repetição Para-Até-Faça possui uma instrução chamada
Passo. Com essa instrução é possível determinar o quanto o laço irá a-
vançar em cada "passagem", ou em cada "execução".
● Por padrão, o Passo é sempre +1, por isso esse laço já incrementa de
forma automática. Alterando a instrução Passo podemos aumentar ou
diminuir o número de execuções do laço."

● Altere o comando do "Para", incluindo a instrução passo:

● Fica assim:
● Execute novamente o seu algoritmo.

• O resultado foi apresentado:

94 Lógica de Programação
● O laço iniciou a contagem com o valor da variável j = 1.

● E executou com incremento de 10 a cada passagem.

● Com isso, ele foi somando +10 a cada execução.


● Feche a janela de execução do programa.
● Vamos aprender um recurso para executar o "Para" de modo inverso.
● Exemplo: Declare uma variável chamada i com o tipo de dados inteiro.

● Abaixo do laço existente, crie o seguinte código:

● A variável i vai iniciar com o valor 10 e ir até 1; como vai ser decrescen-
te, o passo deve ser negativo.

● Execute novamente o seu algoritmo.

Lógica de Programação 95
• O resultado foi apresentado
● Note que fizemos um Para-Até-Faça de modo inverso, começando pelo
maior valor e diminuindo -1 a cada execução.

● Qual Estrutura De Repetição Usar?

● Apesar das particularidades de cada tipo de estrutura, o uso das estrutu-


ras de repetição é bem parecido.
● Muitos algoritmos podem ser resolvidos da mesma maneira, pois em al-
guns casos é possível resolver um mesmo problema usando ambas as
estruturas de repetição.
● Não é correto dizer que se deve usar uma ou a outra repetição, a dica é
utilizar "Enquanto...Faça" para repetições em que não se saiba quantas
vezes será executado, e utilizar a estrutura "Para-Até-Faça" quando já
se sabe quantas repetições serão executadas no laço.

FIM DA APOSTILA
Método CGD ® - Todos os direitos reservados.
Protegidos pela Lei 5988 de 14/12/1973.
Nenhuma parte desta apostila poderá ser copiada sem prévia
autorização.

96 Lógica de Programação
Anotações

Lógica de Programação 97
98 Lógica de Programação
Lógica de Programação 99

Você também pode gostar