Buscar

Comando Enquanto

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1 
 
 
Comando Enquanto: 
 
 
Estruturas de Repetição: 
 
Vamos supor que nossos algoritmos precisarão ser executados mais de uma vez e, para que não tenhamos 
que reescrever trechos idênticos que aumentariam consideravelmente o tamanho do programa 
(redundância), utilizaremos a partir de agora, as estruturas de repetição (looping). 
 
Comando Enquanto (While – Do): 
 
Essa estrutura é recomendada quando o número de repetições for desconhecido. 
Esta estrutura repete uma seqüência de comandos enquanto uma determinada condição (especificada 
através de uma expressão lógica) for satisfeita. 
Nessa estrutura, todos os comandos da lista são executados e uma expressão lógica é avaliada. Isto se 
repetirá até que a avaliação da condição resultar em FALSO, neste caso, ele irá executar o trecho de código 
que estiver após o comando fimenquanto. Cada repetição da lista de comandos também é chamada de 
iteração. 
 
A sintaxe do comando enquanto é: 
 
enquanto (condição) faca 
 //bloco de comandos 
fimEnquanto 
 
(condição) - Esta expressão é avaliada antes de cada repetição do laço. Quando seu resultado for 
VERDADEIRO, o looping será executado. 
 
fimEnquanto - Indica o fim do looping. Cada vez que a execução atinge este ponto, volta-se ao início do 
laço para que a condição seja avaliada novamente. Se o resultado desta avaliação for VERDADEIRO, o 
looping será executada mais uma vez; caso contrário, a execução prosseguirá a partir do primeiro comando 
após fimEnquanto. 
 
Exemplo 1: Entrar com vários números e imprimir ao final quantos números foram digitados: 
 
algoritmo ContarNumeros; 
// Síntese 
// Objetivo: Dados vários números contar quantos foram digitados 
// Entrada : Números quaisquer 
// Saída : Contagem 
 
principal 
real num; 
inteiro cont; 
 
cont = 0; 
escreval("Digite o número ou zero para sair"); 
leia(num); 
enquanto (num != 0) faca 
UNIVERSIDADE CATÓLICA DE BRASÍLIA – UCB 
CURSO: REDES DE COMPUTADORES 
DISCIPLINA: ALGORITMOS E PROGRAMAÇÃO 
PROF
A
.: GRAZIELA FERREIRA GUARDA 
 2 
cont = cont + 1; //Processo de contagem 
escreval("Digite o número ou zero para sair"); //Em um looping sempre é necessários pedir o próximo valor 
para que este seja avaliado e o looping possa ser encerrado! 
leia(num); 
fimEnquanto 
escreval("Foram digitados ", cont, " números!"); 
fimPrincipal 
 
No exemplo acima, a variável num controla o número de repetições do looping. Quando o número 0 (zero) 
for digitado, o resultado lógico do comando resulta em FALSO e a sua execução é interrompida. 
 
Algumas observações importantes em relação ao comando enquanto: 
 
 É preciso um teste para interromper a repetição, o comando enquanto irá testar a condição 
apresentada e só executará o que estiver dentro do laço se o resultado lógico for VERDADEIRO; 
 
 A expressão é avaliada no início do comando e se o resultado for FALSO no primeiro teste, o 
processo de repetição não será executado nenhuma vez; 
 
 A variável que testa a condição deverá ter seu valor atribuído no início do programa através de um 
comando de leitura ou de atribuição, antes do comando enquanto para que o teste ocorra, 
dependendo do valor resultante – VERDADEIRO ou FALSO, o código entrará em looping ou não; 
 
 Um cuidado fundamental que o construtor do algoritmo deve ter é o de certificar-se que a condição 
para que sejam mantidas as iterações torne-se, em algum momento, FALSA, para que o algoritmo 
não entre em um looping infinito; 
 
 Dessa forma, torna-se necessário que seja atribuído um novo valor a variável de controle dentro da 
estrutura, como último comando para que ocorra novamente o teste, lembrando que se o código 
está em processo de repetição é importante ressaltar que o mesmo precisa sair deste para finalizar 
o algoritmo e apresentar seus resultados; 
 
 Podem-se usar outras estruturas dentro do enquanto como os comandos condicionais, por 
exemplo; 
 
 Quando ocorrer um laço infinito no Visualg você ficará sem comunicação. Procura dar 
CTRL+ALT+DEL - selecionar o programa Visualg e clicar no botão finalizar. Não se preocupe com seu 
algoritmo, pois quando isso ocorre, o Visualg salva automaticamente o código fonte em execução. 
Para recuperar seu algoritmo, basta abrir o Visualg novamente e ele mostrará uma janela 
perguntando se deseja recuperar ou não o algoritmo perdido no laço infinito (selecione a opção 
sim).

Outros materiais