SlideShare uma empresa Scribd logo
Aula 04
Estruturas de Repetição
Ênio Prates Vasconcelos Filho
Faculdades Alfa
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Tópicos
Δ Estruturas de Repetição:
• Enquanto...faca
• Repita...ate_que
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Algoritmo da Amizade
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Conhecimentos atuais
Δ Desenvolva um algoritmo que leia a idade de uma pessoa 5 vezes e a cada
vez, multiplique essa idade por 2. Imprima na tela a idade multiplicada a
cada vez em que é calculada.
programa PEDE_NÚMERO
var
X : inteiro
R : inteiro
inicio
leia X
R<-X*2
escreva (R)
leia X
R<-X*2
escreva (R)
leia X
R<-X*2
escreva (R)
leia X
R<-X*2
escreva (R)
leia X
R<-X*2
escreva (R)
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Conhecimentos Atuais
Δ Para estes casos existem comandos apropriados para efetuar a
repetição de determinados trechos de programas o número de vezes
que for necessário;
Δ A principal vantagem deste recurso é que o programa passa a ter um
tamanho menor, podendo sua amplitude de processamento ser aumentada
sem alterar o tamanho do código de programação;
Δ Desta forma, podem-se determinar repetições com números variados de
vezes;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Estrutura de Repetição
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Estruturas de Repetição
Δ Existem situações onde é necessário realizar um mesmo comando diversas
vezes, enquanto durar uma condição;
Δ Até o momento, quando existe a necessidade de repetir uma (ou mais)
instruções, a única saída é repetir o(s) comando(s);
Δ Tal solução é ineficiente considerando que quanto maior o número de
repetições maior será o número de instruções;
• Ex.: Escrever um algoritmo que exiba na tela a frase “Palmeiras é o maior
campeão Brasileiro” 300 vezes;
Δ Solução: Utilizar estruturas de repetição;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Estruturas de Repetição
Δ São estruturas sintáticas que permitem que um trecho de algoritmo (lista
de comandos) seja repetido em um determinado número de vezes (tantas
quanto necessário);
Δ Em Portugol, temos três estruturas de repetição: repita...ate_que,
enquanto...faca e para...faca;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...faca
Δ Nesta estrutura, a repetição de uma determinada lista de instruções está
condicionada a uma análise lógica de uma condição (similar a estrutura SE);
Δ A execução da lista de instruções se repetirá até que a saída lógica da
condição resulte em falso.
Δ CUIDADO para não confundir esta nova estrutura com a estrutura de
decisão “se”:
• Aqui existe um retorno à condição após a execução do bloco de
operações, até que a condição se torne falsa;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...faca
Δ Nesta estrutura, uma expressão lógica é avaliada:
• Se a mesma for verdadeira, uma lista de comandos é executada;
Δ A execução da lista se repetirá até que a avaliação da condição resulte em
FALSO;
Δ Utilizamos as palavras reservadas enquanto e faca para formar o laço de
repetição;
Δ Forma geral:
enquanto (condição) faca
//lista de instruções
fim_enquanto
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca
Δ Caracteriza-se por uma estrutura que efetua um teste lógico no início
de um looping;
Δ Essa estrutura verifica se é permitido executar o trecho de instruções
dentro desse looping.
Δ A estrutura em questão é denominada de enquanto;
Δ Seu conjunto de instruções é: enquanto ... faça ... fim_enquanto.
Δ O seu funcionamento é controlado pela verificação da condição inicial:
• Sendo assim, poderá executar um determinado conjunto de instruções
enquanto a condição verificada for Verdadeira;
• Na próxima verificação, quando esta condição se torna Falsa, o
processamento da rotina é desviado para fora do looping;
• Se a condição for Falsa logo de início, as instruções contidas no looping não
serão realizadas;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto..faca
Δ Algoritmo que escreve os números entre 1 e 10:
Solução:
programa Mostra10
var numero: inteiro
inicio
numero <- 1
enquanto (numero <= 10) faca
escreva(numero)
numero <- numero + 1 // contador
fim_enquanto
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca
Δ Desenvolva um algoritmo que leia a idade de uma pessoa 5 vezes e a cada
vez, multiplique essa idade por 3. Imprima na tela a idade multiplicada a
cada vez em que é calculada (use estruturas de repetição!).
Δ Solução:
Algoritmo
1. Criar uma variável para servir como contador com valor inicial 1;
2. Enquanto o valor do contador for menor ou igual a 5, processar os passos
3, 4 e 5;
3. Ler um valor para a variável X;
4. Efetuar a multiplicação do valor de X por 3, atribuindo o resultado em R;
5. Apresentar o valor calculado contido na variável R;
6. Acrescentar + 1 a variável do tipo contador, definida no passo 1;
7. Quando contador for maior que 5, encerrar o processamento do looping.
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca
Δ Desenvolva um algoritmo que leia
a idade de uma pessoa 5 vezes e a
cada vez, multiplique essa idade
por 3. Imprima na tela a idade
multiplicada a cada vez em que é
calculada (use estruturas de
repetição!).
Δ Solução (diagrama de Blocos)
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca
Δ Desenvolva um algoritmo que leia a idade de uma pessoa 5 vezes e a cada
vez, multiplique essa idade por 3. Imprima na tela a idade multiplicada a
cada vez em que é calculada (use estruturas de repetição!).
Δ Solução:
programa LOOPING_lA
var
X, R : inteiro
CONT: inteiro
inicio
CONT <- 1
enquanto (CONT <= 5) faca
leia X
R<-X* 3
escreva R
CONT <- CONT + 1
fim_ enquanto
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca
Δ Exemplo II: Desenvolva um algoritmo que faça da mesma forma que o
anterior, mas que só para a execução quando o usuário quiser;
Δ Solução:
Algoritmo
1 - Criar uma variável para ser utilizada como resposta;
2 - Enquanto a resposta for “sim”, executar os passos 3, 4 e 5;
3 - Ler um valor para a variável X;
4 - Efetuar a multiplicação do valor de X por 3, implicando o resultado em
R;
5 - Apresentar o valor calculado contido na variável R;
6 - Quando a resposta for diferente de “sim”, encerrar o processamento.
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca
Δ Exemplo II: Desenvolva um algoritmo que faça da mesma forma que o
anterior, mas que só para a execução quando o usuário quiser;
Δ Solução:
programa LOOPING_lB
var
X, R: inteiro
RESP: caractere
inicio
RESP<- "SIM"
enquanto (RESP = "SIM" ) faca
leia X
R<- X* 3
escreva R
escreva "Deseja continuar ?"
leia RESP
fim_enquanto
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca
Δ Veja que o contador foi substituído pela variável RESP, que enquanto
for igual a "SIM" executará a rotina existente entre as instruções
enquanto e fim_enquanto.
Δ Neste caso, o número de vezes que a rotina irá se repetir será
controlado pelo usuário e será encerrada somente quando alguma
informação diferente de "SIM" for fornecida para a variável RESP;
Δ Observe que, para que o “loop” fosse executado na primeira vez, a variável
RESP teve que ser “inicializada” com o valor “SIM”;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca – Para vocês
Δ Faça um algoritmo que lê números inteiros e escreve o dobro de cada um.
Quando um número negativo for digitado, o algoritmo deverá parar de ler
números.
Δ Solução:
programa com_Enquanto
var numero: real
inicio
leia(numero)
enquanto (numero >= 0) faca
escreva (numero * 2)
leia(numero)
fim_enquanto
Fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca
Δ Atenção: Cuidado com laços infinitos! Devemos nos certificar que em
algum momento a expressão lógica próxima a palavra reservada ate será
FALSA!
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca
Δ Algoritmo com laço infinito:
programa lacoInfinito
var contador: inteiro
inicio
contador<-1
enquanto (contador >=1) faca
contador <- 1
escreva(contador)
contador <-contador + 1
Fim_enquanto
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca – para vocês
Δ Faça um algoritmo que receba números inteiros e, enquanto um número
negativo não for digitado, verifica se cada número é menor que5;
Δ Faça um algoritmo que sempre recebe números pares. Caso receba um
número números ímpar, sua execução deverá ser encerrada;
Δ Faça um algoritmo que receba vários números inteiros (enquanto o
número ‐100 não for digitado. O mesmo deverá exibir o maior número
digitado;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Enquanto...Faca – Para vocês
Δ Desafio:
• Faça um algoritmo que lê a idade de várias pessoas, até que uma idade negativa seja
digitada. O algoritmo deverá calcular e exibir a quantidade de pessoas, de acordo
com as faixas etárias apresentadas na tabela abaixo:
FAIXA ETÁRIA IDADE
1ª <= 15 anos
2ª Acima de 15 anos
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que
Δ Nesta estrutura, todas as instruções são executadas e uma expressão lógica
é avaliada;
Δ Isto se repete até que a avaliação da condição resulte em FALSO;
Δ Cada repetição da lista de instruções contidas na estrutura é chamada de
iteração;
Δ A estrutura Repita...ate também é conhecida como laço de repetição;
Δ Nessa estrutura, o código interno a ela SEMPRE é executado, ao menos
uma vez:
• Isso porque a condição de validação só é checada no final do bloco;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que
Δ Utilizamos as palavras reservadas repita e ate_que para formar o laço de
repetição;
Δ Forma geral:
repita
// Lista de instruções
ate_que expressão lógica
Δ Para a estrutura repita, um conjunto de instruções é executado enquanto a
condição se mantém Falsa e até que ela seja Verdadeira;
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que
Δ Exemplo:
• Pedir a leitura de um valor para a variável X, multiplicar esse valor por
3, atribuindo-o à variável de resposta R, e apresentar o valor obtido,
repetindo esta sequência por cinco vezes:
Δ Solução:
• Primeiro, montamos um algoritmo para resolução da solicitação:
Algoritmo
• 1 - Criar uma variável contador;
• 2 - Ler um valor para a variável X;
• 3 - Efetuar a multiplicação do valor de X por 3, atribuindo o resultado em
R;
• 4 - Apresentar o valor calculado contido na variável R;
• 5 - Acrescentar um ao contador;
• 6 - Repetir os passos 2, 3, 4 e 5 até que o contador seja maior que 5.
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que
Δ Exemplo (Parte 2):
• Montamos o diagrama de blocos:
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que
Δ Agora, o programa:
programa LOOPING_2A
var
X, R : inteiro
CONT: inteiro
inicio
inicio
CONT <- 1
repita
leia X
R<-X* 3
escreva R
CONT <- CONT + 1
ate_que ( CONT > 5)
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que
Δ Exemplo II: Desenvolva um algoritmo que faça da mesma forma que o
anterior, mas que só para a execução quando o usuário quiser;
Δ Solução:
1. Iniciar o programa e o modo de laço repita;
2. Ler um valor para a variável X;
3. Efetuar a multiplicação do valor de X por 3, atribuindo o resultado em R;
4. Apresentar o valor calculado contido na variável R;
5. Solicitar do usuário se este deseja ou não continuar o programa;
6. Repetir os passos 2, 3, 4 e 5 até que a resposta do usuário seja não.
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que
Δ Exemplo II: Desenvolva um algoritmo que faça da mesma forma que o
anterior, mas que só para a execução quando o usuário quiser;
Δ Solução:
programa LOOPING_2B
Var
X, R: inteiro
RESP: inteiro
inicio
repita
leia X
R<-X*3
escreva R
escreva "deseja continuar?"
leia RESP
ate_que (RESP <> "SIM" )
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que – Para Vocês
Δ Escreva um algoritmo que imprima os números de 1 a 10 na tela, usando laços de
repetição;
Δ Solução:
programa Mostra10
var numero: inteiro
inicio
numero <- 1
repita
escreva(numero)
numero <- numero + 1 // contador
ate_que numero > 10
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que – Para Vocês
Δ Escreva um algoritmo que imprima os números PARES entre 1 e 10:
Δ Solução:
programa Mostra10
var numero: inteiro
inicio
numero <- 1
repita
se ((numero % 2) = 0) entao
escreva(numero)
fim_se
numero <- numero + 1 // contador
ate_que numero > 10
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que
Δ Atenção: Cuidado com laços infinitos! Devemos nos certificar que em
algum momento a expressão lógica próxima a palavra reservada ate será
FALSA!
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que
Δ Algoritmo com um laço infinito:
programa lacoInfinito
var contador: inteiro
inicio
contador <- 1
repita
escreva(contador)
contador <- contador + 1
ate_que contador = 1
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Repita...ate_que
Δ Algoritmo com um menu:
programa menu
var opcao: inteiro
inicio
repita
escreva(“Cadastro de Clientes”)
escreva (“1 - Incluir”)
escreva (“2 - Alterar”)
escreva (“3 - Consultar”)
escreva (“4 - Excluir”)
escreva (“5 - Sair”)
leia(opcao)
ate_que opcao = 5
fim
I
t
e
n
s
B
á
s
i
c
o
s
ALGORITMOS - 02/2015 – ÊNIO FILHO
Exercícios
Δ Escreva um algoritmo que some os números entre 1 e 10, escrevendo o
resultado final;
Δ Faça um algoritmo que repita 10 vezes a seguinte frase: A CBF é uma
vergonha!
Δ Faça um algoritmo que lê número inteiros até que um número negativo
seja digitado;
Δ Faça um algoritmo que lê a idade de 15 pessoas e mostre a quantidade de
pessoas que possui a idade entre 0 e 12 anos;
DÚVIDAS?
Contatos:
E-mail: enio.filho@alfa.br
Skype: eniopvf
Twitter: eniopvf
Bibliografia:
• MANZANO, José Augusto N. G.; OLIVEIRA, Jayr Figueiredo de. Algoritmos: lógica para
desenvolvimento de programação de computadores. 18ª. ed. São Paulo: Érica, 2006. 236 p. ISBN
857194718;
• FORBELLONE, André Luiz Villar; EBERSPACHER, Henri Frederico. Lógica de programação: a construção
de algoritmos e estruturas de dados. 3ª. ed. São Paulo (SP): Pearson Prentice Hall, 2005. 195 p. ISBN
9788576050247;

Mais conteúdo relacionado

Semelhante a Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf

Curso De Algoritmo Aula 5
Curso De Algoritmo   Aula 5Curso De Algoritmo   Aula 5
Curso De Algoritmo Aula 5
Felipe Santos
 
Algoritmos - Comandos de Repetição
Algoritmos - Comandos de RepetiçãoAlgoritmos - Comandos de Repetição
Algoritmos - Comandos de Repetição
Elaine Cecília Gatto
 
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdfAlgoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
Enio Filho
 
logica d programacaorepeticaoRepitaAte.pdf
logica d programacaorepeticaoRepitaAte.pdflogica d programacaorepeticaoRepitaAte.pdf
logica d programacaorepeticaoRepitaAte.pdf
Carlos Allexadre Gustavo de Souza
 
Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdfAlgoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
Enio Filho
 
02 while
02 while02 while
02 while
Leandro Barbosa
 
Algop - aula 06
Algop - aula 06Algop - aula 06
Algop - aula 06
Thiago Toscano Ferrari
 
Aula03
Aula03Aula03
Aula03
Yuri Passos
 
05 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.005 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.0
César Augusto Pessôa
 
15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticao15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticao
Lee Aragão
 
C aula introdutoria, programacao iniciante.ppt
C aula introdutoria, programacao iniciante.pptC aula introdutoria, programacao iniciante.ppt
C aula introdutoria, programacao iniciante.ppt
MuriloSilvaSantana2
 
Introducao a Lógica de Programação
Introducao a Lógica de ProgramaçãoIntroducao a Lógica de Programação
Introducao a Lógica de Programação
Marcelo Rodrigues
 
Alg aula 05-2 - estruturas de-repeticao tp1 (para)
Alg   aula 05-2 - estruturas de-repeticao tp1 (para)Alg   aula 05-2 - estruturas de-repeticao tp1 (para)
Alg aula 05-2 - estruturas de-repeticao tp1 (para)
Thalles Anderson
 
Algoritmos Aula 08
Algoritmos Aula 08Algoritmos Aula 08
Algoritmos Aula 08
IBTA Turma de TI 2009
 
ICC – Aula 09 – Estrutura de Repetição
ICC – Aula 09 – Estrutura de RepetiçãoICC – Aula 09 – Estrutura de Repetição
ICC – Aula 09 – Estrutura de Repetição
Felipe J. R. Vieira
 
ESTRUTURAS_DE_REPETICAO.ppt
ESTRUTURAS_DE_REPETICAO.pptESTRUTURAS_DE_REPETICAO.ppt
ESTRUTURAS_DE_REPETICAO.ppt
FabianoVilhete3
 
LP1 P01 - Python.pdf
LP1 P01 - Python.pdfLP1 P01 - Python.pdf
LP1 P01 - Python.pdf
Silvano Oliveira
 
Algoritmos e LP - Aula 02 - Tipos de Dados.pdf
Algoritmos e LP - Aula 02 - Tipos de Dados.pdfAlgoritmos e LP - Aula 02 - Tipos de Dados.pdf
Algoritmos e LP - Aula 02 - Tipos de Dados.pdf
Enio Filho
 
Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001
José Volmei Dal Prá Junior
 
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
JustinoFontes
 

Semelhante a Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf (20)

Curso De Algoritmo Aula 5
Curso De Algoritmo   Aula 5Curso De Algoritmo   Aula 5
Curso De Algoritmo Aula 5
 
Algoritmos - Comandos de Repetição
Algoritmos - Comandos de RepetiçãoAlgoritmos - Comandos de Repetição
Algoritmos - Comandos de Repetição
 
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdfAlgoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
Algoritmos e LP - Aula 06 - Estruturas de Repeticao p3 e Vetores.pdf
 
logica d programacaorepeticaoRepitaAte.pdf
logica d programacaorepeticaoRepitaAte.pdflogica d programacaorepeticaoRepitaAte.pdf
logica d programacaorepeticaoRepitaAte.pdf
 
Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdfAlgoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
Algoritmos e LP - Aula 03 - Expressões Aritméticas.pdf
 
02 while
02 while02 while
02 while
 
Algop - aula 06
Algop - aula 06Algop - aula 06
Algop - aula 06
 
Aula03
Aula03Aula03
Aula03
 
05 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.005 - Operadores relacionais e estruturas de repetição - v1.0
05 - Operadores relacionais e estruturas de repetição - v1.0
 
15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticao15080590 aula6-estrutura-de-repeticao
15080590 aula6-estrutura-de-repeticao
 
C aula introdutoria, programacao iniciante.ppt
C aula introdutoria, programacao iniciante.pptC aula introdutoria, programacao iniciante.ppt
C aula introdutoria, programacao iniciante.ppt
 
Introducao a Lógica de Programação
Introducao a Lógica de ProgramaçãoIntroducao a Lógica de Programação
Introducao a Lógica de Programação
 
Alg aula 05-2 - estruturas de-repeticao tp1 (para)
Alg   aula 05-2 - estruturas de-repeticao tp1 (para)Alg   aula 05-2 - estruturas de-repeticao tp1 (para)
Alg aula 05-2 - estruturas de-repeticao tp1 (para)
 
Algoritmos Aula 08
Algoritmos Aula 08Algoritmos Aula 08
Algoritmos Aula 08
 
ICC – Aula 09 – Estrutura de Repetição
ICC – Aula 09 – Estrutura de RepetiçãoICC – Aula 09 – Estrutura de Repetição
ICC – Aula 09 – Estrutura de Repetição
 
ESTRUTURAS_DE_REPETICAO.ppt
ESTRUTURAS_DE_REPETICAO.pptESTRUTURAS_DE_REPETICAO.ppt
ESTRUTURAS_DE_REPETICAO.ppt
 
LP1 P01 - Python.pdf
LP1 P01 - Python.pdfLP1 P01 - Python.pdf
LP1 P01 - Python.pdf
 
Algoritmos e LP - Aula 02 - Tipos de Dados.pdf
Algoritmos e LP - Aula 02 - Tipos de Dados.pdfAlgoritmos e LP - Aula 02 - Tipos de Dados.pdf
Algoritmos e LP - Aula 02 - Tipos de Dados.pdf
 
Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001
 
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
 

Mais de Enio Filho

Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdfAlgoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
Enio Filho
 
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdf
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdfAlgoritmos e LP - Aula 08 - Linguagem C - p1.pdf
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdf
Enio Filho
 
Algoritmos e LP - Aula 01 - Introdução a Algoritmos.pdf
Algoritmos e LP - Aula 01 - Introdução a Algoritmos.pdfAlgoritmos e LP - Aula 01 - Introdução a Algoritmos.pdf
Algoritmos e LP - Aula 01 - Introdução a Algoritmos.pdf
Enio Filho
 
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdfAlgoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
Enio Filho
 
Eica 2016.1 - Identificando e rastreando itens na era do IOT
Eica 2016.1 - Identificando e rastreando itens na era do IOTEica 2016.1 - Identificando e rastreando itens na era do IOT
Eica 2016.1 - Identificando e rastreando itens na era do IOT
Enio Filho
 
Eica 2015.2 - Introdução ao IOT
Eica 2015.2 - Introdução ao IOTEica 2015.2 - Introdução ao IOT
Eica 2015.2 - Introdução ao IOT
Enio Filho
 
Eica 2016.2 - Industria 4.0
Eica 2016.2 - Industria 4.0Eica 2016.2 - Industria 4.0
Eica 2016.2 - Industria 4.0
Enio Filho
 
Iot - identificando e rastreando - PUC
Iot  - identificando e rastreando - PUCIot  - identificando e rastreando - PUC
Iot - identificando e rastreando - PUC
Enio Filho
 

Mais de Enio Filho (8)

Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdfAlgoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
Algoritmos e LP - Aula 07 - Vetores e Introdução ao C.pdf
 
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdf
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdfAlgoritmos e LP - Aula 08 - Linguagem C - p1.pdf
Algoritmos e LP - Aula 08 - Linguagem C - p1.pdf
 
Algoritmos e LP - Aula 01 - Introdução a Algoritmos.pdf
Algoritmos e LP - Aula 01 - Introdução a Algoritmos.pdfAlgoritmos e LP - Aula 01 - Introdução a Algoritmos.pdf
Algoritmos e LP - Aula 01 - Introdução a Algoritmos.pdf
 
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdfAlgoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
Algoritmos e LP - Aula 00 - Introdução e Apresentação.pdf
 
Eica 2016.1 - Identificando e rastreando itens na era do IOT
Eica 2016.1 - Identificando e rastreando itens na era do IOTEica 2016.1 - Identificando e rastreando itens na era do IOT
Eica 2016.1 - Identificando e rastreando itens na era do IOT
 
Eica 2015.2 - Introdução ao IOT
Eica 2015.2 - Introdução ao IOTEica 2015.2 - Introdução ao IOT
Eica 2015.2 - Introdução ao IOT
 
Eica 2016.2 - Industria 4.0
Eica 2016.2 - Industria 4.0Eica 2016.2 - Industria 4.0
Eica 2016.2 - Industria 4.0
 
Iot - identificando e rastreando - PUC
Iot  - identificando e rastreando - PUCIot  - identificando e rastreando - PUC
Iot - identificando e rastreando - PUC
 

Último

O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdfO Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
silvamelosilva300
 
Planejamento BNCC - 4 ANO -TRIMESTRAL - ENSINO FUNDAMENTAL
Planejamento BNCC - 4 ANO -TRIMESTRAL - ENSINO FUNDAMENTALPlanejamento BNCC - 4 ANO -TRIMESTRAL - ENSINO FUNDAMENTAL
Planejamento BNCC - 4 ANO -TRIMESTRAL - ENSINO FUNDAMENTAL
katbrochier1
 
Educação trabalho HQ em sala de aula uma excelente ideia
Educação  trabalho HQ em sala de aula uma excelente  ideiaEducação  trabalho HQ em sala de aula uma excelente  ideia
Educação trabalho HQ em sala de aula uma excelente ideia
joseanesouza36
 
12072423052012Critica_Literaria_-_Aula_07.pdf
12072423052012Critica_Literaria_-_Aula_07.pdf12072423052012Critica_Literaria_-_Aula_07.pdf
12072423052012Critica_Literaria_-_Aula_07.pdf
JohnnyLima16
 
Atividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º anoAtividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º ano
fernandacosta37763
 
Introdução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escolaIntrodução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escola
Professor Belinaso
 
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdfUFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
Manuais Formação
 
1_10_06_2024_Criança e Cultura Escrita, Ana Maria de Oliveira Galvão.pdf
1_10_06_2024_Criança e Cultura Escrita, Ana Maria de Oliveira Galvão.pdf1_10_06_2024_Criança e Cultura Escrita, Ana Maria de Oliveira Galvão.pdf
1_10_06_2024_Criança e Cultura Escrita, Ana Maria de Oliveira Galvão.pdf
SILVIAREGINANAZARECA
 
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdfA QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
AurelianoFerreirades2
 
UFCD_6580_Cuidados na saúde a populações mais vulneráveis_índice.pdf
UFCD_6580_Cuidados na saúde a populações mais vulneráveis_índice.pdfUFCD_6580_Cuidados na saúde a populações mais vulneráveis_índice.pdf
UFCD_6580_Cuidados na saúde a populações mais vulneráveis_índice.pdf
Manuais Formação
 
Roteiro para análise do Livro Didático.pptx
Roteiro para análise do Livro Didático.pptxRoteiro para análise do Livro Didático.pptx
Roteiro para análise do Livro Didático.pptx
pamellaaraujo10
 
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptxTreinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
MarcosPaulo777883
 
As sequências didáticas: práticas educativas
As sequências didáticas: práticas educativasAs sequências didáticas: práticas educativas
As sequências didáticas: práticas educativas
rloureiro1
 
D20 - Descritores SAEB de Língua Portuguesa
D20 - Descritores SAEB de Língua PortuguesaD20 - Descritores SAEB de Língua Portuguesa
D20 - Descritores SAEB de Língua Portuguesa
eaiprofpolly
 
Slides Lição 12, Central Gospel, O Milênio, 1Tr24, Pr Henrique.pptx
Slides Lição 12, Central Gospel, O Milênio, 1Tr24, Pr Henrique.pptxSlides Lição 12, Central Gospel, O Milênio, 1Tr24, Pr Henrique.pptx
Slides Lição 12, Central Gospel, O Milênio, 1Tr24, Pr Henrique.pptx
LuizHenriquedeAlmeid6
 
Vogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantilVogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantil
mamaeieby
 
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
ProfessoraTatianaT
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
lveiga112
 
Redação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptxRedação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptx
DECIOMAURINARAMOS
 
O Profeta Jeremias - A Biografia de Jeremias.pptx4
O Profeta Jeremias - A Biografia de Jeremias.pptx4O Profeta Jeremias - A Biografia de Jeremias.pptx4
O Profeta Jeremias - A Biografia de Jeremias.pptx4
DouglasMoraes54
 

Último (20)

O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdfO Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
 
Planejamento BNCC - 4 ANO -TRIMESTRAL - ENSINO FUNDAMENTAL
Planejamento BNCC - 4 ANO -TRIMESTRAL - ENSINO FUNDAMENTALPlanejamento BNCC - 4 ANO -TRIMESTRAL - ENSINO FUNDAMENTAL
Planejamento BNCC - 4 ANO -TRIMESTRAL - ENSINO FUNDAMENTAL
 
Educação trabalho HQ em sala de aula uma excelente ideia
Educação  trabalho HQ em sala de aula uma excelente  ideiaEducação  trabalho HQ em sala de aula uma excelente  ideia
Educação trabalho HQ em sala de aula uma excelente ideia
 
12072423052012Critica_Literaria_-_Aula_07.pdf
12072423052012Critica_Literaria_-_Aula_07.pdf12072423052012Critica_Literaria_-_Aula_07.pdf
12072423052012Critica_Literaria_-_Aula_07.pdf
 
Atividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º anoAtividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º ano
 
Introdução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escolaIntrodução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escola
 
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdfUFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
 
1_10_06_2024_Criança e Cultura Escrita, Ana Maria de Oliveira Galvão.pdf
1_10_06_2024_Criança e Cultura Escrita, Ana Maria de Oliveira Galvão.pdf1_10_06_2024_Criança e Cultura Escrita, Ana Maria de Oliveira Galvão.pdf
1_10_06_2024_Criança e Cultura Escrita, Ana Maria de Oliveira Galvão.pdf
 
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdfA QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
 
UFCD_6580_Cuidados na saúde a populações mais vulneráveis_índice.pdf
UFCD_6580_Cuidados na saúde a populações mais vulneráveis_índice.pdfUFCD_6580_Cuidados na saúde a populações mais vulneráveis_índice.pdf
UFCD_6580_Cuidados na saúde a populações mais vulneráveis_índice.pdf
 
Roteiro para análise do Livro Didático.pptx
Roteiro para análise do Livro Didático.pptxRoteiro para análise do Livro Didático.pptx
Roteiro para análise do Livro Didático.pptx
 
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptxTreinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
 
As sequências didáticas: práticas educativas
As sequências didáticas: práticas educativasAs sequências didáticas: práticas educativas
As sequências didáticas: práticas educativas
 
D20 - Descritores SAEB de Língua Portuguesa
D20 - Descritores SAEB de Língua PortuguesaD20 - Descritores SAEB de Língua Portuguesa
D20 - Descritores SAEB de Língua Portuguesa
 
Slides Lição 12, Central Gospel, O Milênio, 1Tr24, Pr Henrique.pptx
Slides Lição 12, Central Gospel, O Milênio, 1Tr24, Pr Henrique.pptxSlides Lição 12, Central Gospel, O Milênio, 1Tr24, Pr Henrique.pptx
Slides Lição 12, Central Gospel, O Milênio, 1Tr24, Pr Henrique.pptx
 
Vogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantilVogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantil
 
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGTUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
TUTORIAL PARA LANÇAMENTOGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
 
Redação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptxRedação e Leitura_7º ano_58_Produção de cordel .pptx
Redação e Leitura_7º ano_58_Produção de cordel .pptx
 
O Profeta Jeremias - A Biografia de Jeremias.pptx4
O Profeta Jeremias - A Biografia de Jeremias.pptx4O Profeta Jeremias - A Biografia de Jeremias.pptx4
O Profeta Jeremias - A Biografia de Jeremias.pptx4
 

Algoritmos e LP - Aula 04 - Estruturas de Repeticao - p1.pdf

  • 1. Aula 04 Estruturas de Repetição Ênio Prates Vasconcelos Filho Faculdades Alfa
  • 2. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Tópicos Δ Estruturas de Repetição: • Enquanto...faca • Repita...ate_que
  • 3. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Algoritmo da Amizade
  • 4. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Conhecimentos atuais Δ Desenvolva um algoritmo que leia a idade de uma pessoa 5 vezes e a cada vez, multiplique essa idade por 2. Imprima na tela a idade multiplicada a cada vez em que é calculada. programa PEDE_NÚMERO var X : inteiro R : inteiro inicio leia X R<-X*2 escreva (R) leia X R<-X*2 escreva (R) leia X R<-X*2 escreva (R) leia X R<-X*2 escreva (R) leia X R<-X*2 escreva (R) fim
  • 5. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Conhecimentos Atuais Δ Para estes casos existem comandos apropriados para efetuar a repetição de determinados trechos de programas o número de vezes que for necessário; Δ A principal vantagem deste recurso é que o programa passa a ter um tamanho menor, podendo sua amplitude de processamento ser aumentada sem alterar o tamanho do código de programação; Δ Desta forma, podem-se determinar repetições com números variados de vezes;
  • 6. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Estrutura de Repetição
  • 7. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Estruturas de Repetição Δ Existem situações onde é necessário realizar um mesmo comando diversas vezes, enquanto durar uma condição; Δ Até o momento, quando existe a necessidade de repetir uma (ou mais) instruções, a única saída é repetir o(s) comando(s); Δ Tal solução é ineficiente considerando que quanto maior o número de repetições maior será o número de instruções; • Ex.: Escrever um algoritmo que exiba na tela a frase “Palmeiras é o maior campeão Brasileiro” 300 vezes; Δ Solução: Utilizar estruturas de repetição;
  • 8. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Estruturas de Repetição Δ São estruturas sintáticas que permitem que um trecho de algoritmo (lista de comandos) seja repetido em um determinado número de vezes (tantas quanto necessário); Δ Em Portugol, temos três estruturas de repetição: repita...ate_que, enquanto...faca e para...faca;
  • 9. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...faca Δ Nesta estrutura, a repetição de uma determinada lista de instruções está condicionada a uma análise lógica de uma condição (similar a estrutura SE); Δ A execução da lista de instruções se repetirá até que a saída lógica da condição resulte em falso. Δ CUIDADO para não confundir esta nova estrutura com a estrutura de decisão “se”: • Aqui existe um retorno à condição após a execução do bloco de operações, até que a condição se torne falsa;
  • 10. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca
  • 11. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...faca Δ Nesta estrutura, uma expressão lógica é avaliada: • Se a mesma for verdadeira, uma lista de comandos é executada; Δ A execução da lista se repetirá até que a avaliação da condição resulte em FALSO; Δ Utilizamos as palavras reservadas enquanto e faca para formar o laço de repetição; Δ Forma geral: enquanto (condição) faca //lista de instruções fim_enquanto
  • 12. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca Δ Caracteriza-se por uma estrutura que efetua um teste lógico no início de um looping; Δ Essa estrutura verifica se é permitido executar o trecho de instruções dentro desse looping. Δ A estrutura em questão é denominada de enquanto; Δ Seu conjunto de instruções é: enquanto ... faça ... fim_enquanto. Δ O seu funcionamento é controlado pela verificação da condição inicial: • Sendo assim, poderá executar um determinado conjunto de instruções enquanto a condição verificada for Verdadeira; • Na próxima verificação, quando esta condição se torna Falsa, o processamento da rotina é desviado para fora do looping; • Se a condição for Falsa logo de início, as instruções contidas no looping não serão realizadas;
  • 13. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto..faca Δ Algoritmo que escreve os números entre 1 e 10: Solução: programa Mostra10 var numero: inteiro inicio numero <- 1 enquanto (numero <= 10) faca escreva(numero) numero <- numero + 1 // contador fim_enquanto fim
  • 14. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca Δ Desenvolva um algoritmo que leia a idade de uma pessoa 5 vezes e a cada vez, multiplique essa idade por 3. Imprima na tela a idade multiplicada a cada vez em que é calculada (use estruturas de repetição!). Δ Solução: Algoritmo 1. Criar uma variável para servir como contador com valor inicial 1; 2. Enquanto o valor do contador for menor ou igual a 5, processar os passos 3, 4 e 5; 3. Ler um valor para a variável X; 4. Efetuar a multiplicação do valor de X por 3, atribuindo o resultado em R; 5. Apresentar o valor calculado contido na variável R; 6. Acrescentar + 1 a variável do tipo contador, definida no passo 1; 7. Quando contador for maior que 5, encerrar o processamento do looping.
  • 15. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca Δ Desenvolva um algoritmo que leia a idade de uma pessoa 5 vezes e a cada vez, multiplique essa idade por 3. Imprima na tela a idade multiplicada a cada vez em que é calculada (use estruturas de repetição!). Δ Solução (diagrama de Blocos)
  • 16. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca Δ Desenvolva um algoritmo que leia a idade de uma pessoa 5 vezes e a cada vez, multiplique essa idade por 3. Imprima na tela a idade multiplicada a cada vez em que é calculada (use estruturas de repetição!). Δ Solução: programa LOOPING_lA var X, R : inteiro CONT: inteiro inicio CONT <- 1 enquanto (CONT <= 5) faca leia X R<-X* 3 escreva R CONT <- CONT + 1 fim_ enquanto fim
  • 17. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca Δ Exemplo II: Desenvolva um algoritmo que faça da mesma forma que o anterior, mas que só para a execução quando o usuário quiser; Δ Solução: Algoritmo 1 - Criar uma variável para ser utilizada como resposta; 2 - Enquanto a resposta for “sim”, executar os passos 3, 4 e 5; 3 - Ler um valor para a variável X; 4 - Efetuar a multiplicação do valor de X por 3, implicando o resultado em R; 5 - Apresentar o valor calculado contido na variável R; 6 - Quando a resposta for diferente de “sim”, encerrar o processamento.
  • 18. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca Δ Exemplo II: Desenvolva um algoritmo que faça da mesma forma que o anterior, mas que só para a execução quando o usuário quiser; Δ Solução: programa LOOPING_lB var X, R: inteiro RESP: caractere inicio RESP<- "SIM" enquanto (RESP = "SIM" ) faca leia X R<- X* 3 escreva R escreva "Deseja continuar ?" leia RESP fim_enquanto fim
  • 19. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca Δ Veja que o contador foi substituído pela variável RESP, que enquanto for igual a "SIM" executará a rotina existente entre as instruções enquanto e fim_enquanto. Δ Neste caso, o número de vezes que a rotina irá se repetir será controlado pelo usuário e será encerrada somente quando alguma informação diferente de "SIM" for fornecida para a variável RESP; Δ Observe que, para que o “loop” fosse executado na primeira vez, a variável RESP teve que ser “inicializada” com o valor “SIM”;
  • 20. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca – Para vocês Δ Faça um algoritmo que lê números inteiros e escreve o dobro de cada um. Quando um número negativo for digitado, o algoritmo deverá parar de ler números. Δ Solução: programa com_Enquanto var numero: real inicio leia(numero) enquanto (numero >= 0) faca escreva (numero * 2) leia(numero) fim_enquanto Fim
  • 21. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca Δ Atenção: Cuidado com laços infinitos! Devemos nos certificar que em algum momento a expressão lógica próxima a palavra reservada ate será FALSA!
  • 22. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca Δ Algoritmo com laço infinito: programa lacoInfinito var contador: inteiro inicio contador<-1 enquanto (contador >=1) faca contador <- 1 escreva(contador) contador <-contador + 1 Fim_enquanto fim
  • 23. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca – para vocês Δ Faça um algoritmo que receba números inteiros e, enquanto um número negativo não for digitado, verifica se cada número é menor que5; Δ Faça um algoritmo que sempre recebe números pares. Caso receba um número números ímpar, sua execução deverá ser encerrada; Δ Faça um algoritmo que receba vários números inteiros (enquanto o número ‐100 não for digitado. O mesmo deverá exibir o maior número digitado;
  • 24. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Enquanto...Faca – Para vocês Δ Desafio: • Faça um algoritmo que lê a idade de várias pessoas, até que uma idade negativa seja digitada. O algoritmo deverá calcular e exibir a quantidade de pessoas, de acordo com as faixas etárias apresentadas na tabela abaixo: FAIXA ETÁRIA IDADE 1ª <= 15 anos 2ª Acima de 15 anos
  • 25. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que Δ Nesta estrutura, todas as instruções são executadas e uma expressão lógica é avaliada; Δ Isto se repete até que a avaliação da condição resulte em FALSO; Δ Cada repetição da lista de instruções contidas na estrutura é chamada de iteração; Δ A estrutura Repita...ate também é conhecida como laço de repetição; Δ Nessa estrutura, o código interno a ela SEMPRE é executado, ao menos uma vez: • Isso porque a condição de validação só é checada no final do bloco;
  • 26. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que Δ Utilizamos as palavras reservadas repita e ate_que para formar o laço de repetição; Δ Forma geral: repita // Lista de instruções ate_que expressão lógica Δ Para a estrutura repita, um conjunto de instruções é executado enquanto a condição se mantém Falsa e até que ela seja Verdadeira;
  • 27. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que Δ Exemplo: • Pedir a leitura de um valor para a variável X, multiplicar esse valor por 3, atribuindo-o à variável de resposta R, e apresentar o valor obtido, repetindo esta sequência por cinco vezes: Δ Solução: • Primeiro, montamos um algoritmo para resolução da solicitação: Algoritmo • 1 - Criar uma variável contador; • 2 - Ler um valor para a variável X; • 3 - Efetuar a multiplicação do valor de X por 3, atribuindo o resultado em R; • 4 - Apresentar o valor calculado contido na variável R; • 5 - Acrescentar um ao contador; • 6 - Repetir os passos 2, 3, 4 e 5 até que o contador seja maior que 5.
  • 28. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que Δ Exemplo (Parte 2): • Montamos o diagrama de blocos:
  • 29. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que Δ Agora, o programa: programa LOOPING_2A var X, R : inteiro CONT: inteiro inicio inicio CONT <- 1 repita leia X R<-X* 3 escreva R CONT <- CONT + 1 ate_que ( CONT > 5) fim
  • 30. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que Δ Exemplo II: Desenvolva um algoritmo que faça da mesma forma que o anterior, mas que só para a execução quando o usuário quiser; Δ Solução: 1. Iniciar o programa e o modo de laço repita; 2. Ler um valor para a variável X; 3. Efetuar a multiplicação do valor de X por 3, atribuindo o resultado em R; 4. Apresentar o valor calculado contido na variável R; 5. Solicitar do usuário se este deseja ou não continuar o programa; 6. Repetir os passos 2, 3, 4 e 5 até que a resposta do usuário seja não.
  • 31. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que Δ Exemplo II: Desenvolva um algoritmo que faça da mesma forma que o anterior, mas que só para a execução quando o usuário quiser; Δ Solução: programa LOOPING_2B Var X, R: inteiro RESP: inteiro inicio repita leia X R<-X*3 escreva R escreva "deseja continuar?" leia RESP ate_que (RESP <> "SIM" ) fim
  • 32. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que – Para Vocês Δ Escreva um algoritmo que imprima os números de 1 a 10 na tela, usando laços de repetição; Δ Solução: programa Mostra10 var numero: inteiro inicio numero <- 1 repita escreva(numero) numero <- numero + 1 // contador ate_que numero > 10 fim
  • 33. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que – Para Vocês Δ Escreva um algoritmo que imprima os números PARES entre 1 e 10: Δ Solução: programa Mostra10 var numero: inteiro inicio numero <- 1 repita se ((numero % 2) = 0) entao escreva(numero) fim_se numero <- numero + 1 // contador ate_que numero > 10 fim
  • 34. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que Δ Atenção: Cuidado com laços infinitos! Devemos nos certificar que em algum momento a expressão lógica próxima a palavra reservada ate será FALSA!
  • 35. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que Δ Algoritmo com um laço infinito: programa lacoInfinito var contador: inteiro inicio contador <- 1 repita escreva(contador) contador <- contador + 1 ate_que contador = 1 fim
  • 36. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Repita...ate_que Δ Algoritmo com um menu: programa menu var opcao: inteiro inicio repita escreva(“Cadastro de Clientes”) escreva (“1 - Incluir”) escreva (“2 - Alterar”) escreva (“3 - Consultar”) escreva (“4 - Excluir”) escreva (“5 - Sair”) leia(opcao) ate_que opcao = 5 fim
  • 37. I t e n s B á s i c o s ALGORITMOS - 02/2015 – ÊNIO FILHO Exercícios Δ Escreva um algoritmo que some os números entre 1 e 10, escrevendo o resultado final; Δ Faça um algoritmo que repita 10 vezes a seguinte frase: A CBF é uma vergonha! Δ Faça um algoritmo que lê número inteiros até que um número negativo seja digitado; Δ Faça um algoritmo que lê a idade de 15 pessoas e mostre a quantidade de pessoas que possui a idade entre 0 e 12 anos;
  • 38. DÚVIDAS? Contatos: E-mail: enio.filho@alfa.br Skype: eniopvf Twitter: eniopvf Bibliografia: • MANZANO, José Augusto N. G.; OLIVEIRA, Jayr Figueiredo de. Algoritmos: lógica para desenvolvimento de programação de computadores. 18ª. ed. São Paulo: Érica, 2006. 236 p. ISBN 857194718; • FORBELLONE, André Luiz Villar; EBERSPACHER, Henri Frederico. Lógica de programação: a construção de algoritmos e estruturas de dados. 3ª. ed. São Paulo (SP): Pearson Prentice Hall, 2005. 195 p. ISBN 9788576050247;