O documento discute estruturas de repetição em algoritmos, apresentando exemplos de laços while, do-while, for, até e repita. É explicado que estas estruturas permitem executar um conjunto de instruções múltiplas vezes até que uma condição seja satisfeita. Dois exercícios sobre este tema são propostos no final.
3. Algoritmo
LOOP INFINITO
O diretor disse à secretária:
— Vamos viajar para o exterior por uma semana, para um
Seminário. Faça os preparativos da viagem!
A secretária faz uma chamada para o marido:
— Vou viajar para o exterior com o diretor por uma semana. Se
cuida, querido.
O marido liga para a amante:
— Minha mulher vai viajar para o exterior por uma semana,
então nós vamos poder passar a semana juntos, meu docinho!
A amante liga para um menino a quem dá aulas particulares:
— Tenho muito trabalho, na próxima semana não precisa vir às
aulas.
4. Algoritmo
O menino liga para o seu avô:
— Vô, na próxima semana não tenho aulas, a minha professora
estará ocupada. Vamos passar a semana juntos?
O avô (que é o diretor desta história) liga para a secretária:
— Vou passar a próxima semana com o meu neto, então não vou
participar daquele Seminário. Pode cancelar a viagem.
A secretária liga para o marido:
— O diretor da empresa mudou de idéia e acabou cancelando a
viagem.
O marido liga para a amante:
— Não poderemos passar a próxima semana juntos, a viagem da
minha mulher foi cancelada.
A amante liga para o menino das aulas particulares:
— Mudança de planos: esta semana vamos ter aulas como
normalmente.
O menino liga para o avô:
— Vô, a minha professora disse que esta semana tenho aulas.
Desculpe-me, não vai dar para fazer-lhe companhia.
O avô liga para a sua secretária:
— Meu neto acabou de dizer que não vai poder ficar comigo essa
semana. Continue com os preparativos da viagem ao seminário!
5. Algoritmo
Estruturas de Repetição
Utilizamos os comandos de repetição quando desejamos que um
determinado conjunto de instruções ou comandos sejam
executados um número definido ou indefinido de vezes, ou
enquanto um determinado estado de coisas prevalecer ou até
que seja alcançado.
6. Algoritmo
Estruturas de Repetição
Trabalharemos com modelos de comandos de repetição:
• Enquanto x, faça
• Até que x, faça ...
• Faça ..., Enquanto x
• Faça ..., Até que x
• Para ... Até ... Seguinte
7. Algoritmo
Enquanto x, faça (Do While ... Loop)
Neste caso, o bloco de operações será executado enquanto a
condição x for verdadeira. O teste da condição será sempre
realizado antes de qualquer operação.
Enquanto a condição for verdadeira o processo se repete.
Podemos utilizar essa estrutura para trabalharmos com
contadores.
9. Algoritmo
Enquanto x, faça
enquanto <expressão-lógica> faca
<seqüência-de-comandos>
fimenquanto
EXEMPLO ALGORITMO
algoritmo "Números de 1 a 10 (com enquanto...faca)"
var j: inteiro
inicio
j <- 1
enquanto j <= 10 faca
escreva (j:3)
j <- j + 1
fimenquanto
fimalgoritmo
10. Algoritmo
Faça ..., Enquanto x
Neste caso primeiro são executados os comandos, e somente
depois é realizado o teste da condição. Se a condição for
verdadeira, os comandos são executados novamente, caso seja
falso é encerrado o comando DO.
12. Algoritmo
Faça ..., Até que x
Neste caso, executa-se primeiro o bloco de operações e somente
depois é realizado o teste de condição. Se a condição for
verdadeira, o fluxo do programa continua normalmente. Caso
contrário é processado novamente os comandos antes do teste da
condição.
14. Algoritmo
Faça ..., Até que x
repita
<seqüência-de-comandos>
ate <expressão-lógica>
algoritmo "Números de 1 a 10 (com repita)"
var j: inteiro
inicio
j <- 1
repita
escreva (j:3)
j <- j + 1
ate j > 10
fimalgoritmo
16. Algoritmo
Para ... faça
para <variável> de <valor-inicial> ate <valor-limite> [passo
<incremento>] faca
<seqüência-de-comandos>
Fimpara
<variável> É a variável contadora que controla o número de
repetições do laço.
<valor-limite> É uma expressão que especifica o valor máximo
que a variável contadora pode alcançar.
<incremento> É opcional. é uma expressão que especifica o
incremento que será acrescentado à variável contadora em cada
repetição do laço.
17. Algoritmo
Para ... faça
algoritmo "Números de 1 a 10"
var j: inteiro
inicio
para j de 1 ate 10 faca
escreva (j:3)
fimpara
fimalgoritmo algoritmo "Numeros de 10 a 1”"
var j: inteiro
inicio
para j de 10 ate 1 passo -1 faca
escreva (j:3)
fimpara
fimalgoritmo
18. Algoritmo
EXERCÍCIOS
1) Faça um algoritmo que determine o maior entre N números. A
condição de parada é a entrada de um valor 0, ou seja, o algoritmo
deve ficar calculando o maior até que a entrada seja igual a 0
(ZERO).
2) Faça um algoritmo que conte de 1 a 100 e a cada múltiplo de 10
emita uma mensagem: “Múltiplo de 10”.