Buscar

5_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

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

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ê viu 3, do total de 4 páginas

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

Comandos de Repetição Enquanto e 
Faça-Enquanto 
Comandos de Repetição Enquanto 
Assim como o comando para, o comando enquanto tem como principal objetivo 
executar um bloco de comandos repetidas vezes. 
O comando de repetição enquanto possui a seguinte estrutura: 
enquanto <expressão lógica> 
{ 
 <comandos>; 
} 
Basicamente, o comando enquanto executa o bloco de comandos associado 
enquanto a expressão lógica for avaliada como verdade. 
No início da execução do comando enquanto, a expressão lógica é avaliada e, 
caso ela resulte em verdade, os comandos do bloco de comandos associado são 
executados pela primeira vez. Ao final da execução do bloco de comandos, a 
expressão lógica é avaliada novamente, e caso ela continue resultando em 
verdade, os comandos do bloco de comandos são executados novamente. O laço 
irá executar os comandos do bloco de comandos repetidamente enquanto a 
expressão lógica for avaliada como verdade. Na primeira ocasião em que a 
expressão lógica for avaliada como falso, o laço é terminado e a execução do 
programa prossegue. 
É importante ressaltar que um laço enquanto pode até mesmo não executar o 
bloco de comandos nenhuma vez. No início da execução do comando enquanto, 
quando a expressão lógica é avaliada pela primeira vez, caso ela resulte em falso 
o comando enquanto não executa o bloco de comandos. Nesse caso, o comando 
enquanto salta todos os comandos presentes no bloco de comandos associado, e 
continua a execução do programa normalmente. 
Vamos ver um algoritmo exemplo que utiliza o comando enquanto: 
01 | Algoritmo exemplo_enquanto; 
02 | 
03 | { 
04 | resp: caractere; 
05 | 
06 | 
07 | resp ´n´; 
08 | enquanto resp == ´n´ 
09 | { 
10 | escreva("Você quer parar agora <s/n>?"); 
11 | leia(resp); 
12 | } 
13 | } 
O exemplo acima utiliza uma variável chamada resp do tipo caracter. Essa 
variável irá armazenar o valor ´s´ caso o usuário queira continuar dentro do laço 
ou ´n´ caso o usuário queira parar com o laço. Repare que na linha 07 a variável 
resp é inicializada com o valor ´n´. Essa inicialização é necessária pois sem ela o 
laço não é executado nem uma única vez. Na linha 08 está o comando enquanto 
com a condição de executar o laço enquanto o valor da variável resp for igual a 
´n´. Como a variável resp foi inicializada com o valor ´n´, então os comandos 
pertencentes ao bloco de comandos associado ao comando enquanto (linhas 09, 
10, 11 e 12) são executados pela primeira vez. Dentro do laço, o comando 
escreva (linha 10) pergunta ao usuário se ele deseja parar com o laço, e o 
comando leia (linha 11) lê do teclado a resposta do usuário. O usuário deve digitar 
´s´ ou ´n´. Independentemente da resposta do usuário, a execução volta para a 
linha 08 na qual a expressão lógica do comando enquanto é avaliada novamente. 
Caso a resposta do usuário seja igual a ´n´ (ele não quer parar o laço), então o 
programa irá executar os comandos associados ao comando enquanto 
novamente. Caso o usuário tenha digitado ´s´ então o laço termina pois a 
expressão lógica 
resp == ´n´ 
é avaliada como falso, pois ´s´ não é igual a ´n´. 
Ao final da execução do laço enquanto o algoritmo irá continuar a sua execução 
normalmente. No caso do algoritmo exemplo acima, como não existem mais 
comandos após o bloco de comandos associado ao comando enquanto, a 
execução do programa termina. 
Comando de Repetição Faça-Enquanto 
O comando de repetição faça-enquanto, assim como os demais comandos de 
repetição, utiliza uma expressão lógica para controlar até quando o bloco de 
comandos deve ser executado. A estrutura do comando faça-enquanto é a 
seguinte: 
faça { 
 <comandos>; 
} enquanto <expressão lógica>; 
O comando faça-enquanto funciona da seguinte forma. Os comandos do bloco de 
comandos delimitado pelas palavras reservadas { e } são executados pela 
primeira vez. Quando a execução atinge a palavra reservada enquanto, a 
expressão lógica é avaliada pela primeira vez. Caso a expressão lógica seja 
avaliada em verdadeiro, então a execução do algoritmo volta para a palavra 
reservada {, e os comandos são executados novamente. Caso a expressão lógica 
seja avaliada como falso, então o laço termina e a execução do programa 
continua normalmente. 
Resumidamente, o laço faça-enquanto repete os comando do bloco de comandos 
associado enquanto a expressão lógica seja avaliada como verdade. 
É importante ressaltar que os comandos do bloco de comandos delimitado pelas 
palavras { e } são sempre executados pelo menos uma vez. 
Vamos ver um exemplo de algoritmo com um laço faça-enquanto: 
01 | Algoritmo exemplo_faca_enquanto; 
02 | 
03 | { 
04 | resp: caractere; 
05 | 
06 | 
08 | faça { 
10 | escreva("Você quer parar agora <s/n>?"); 
11 | leia(Resp); 
12 | } enquanto resp == ´n´; 
13 | } 
No exemplo acima, o laço faça-enquanto executa os comandos do bloco de 
comandos associado (linhas 10 e 11) enquanto a resposta digitada pelo usuário, 
armazenada na variável resp, é igual ao valor ´n´. Repare que não foi necessário 
inicializar a variável resp pois o comando leia irá ler a resposta do usuário antes 
que a condição do comando enquanto seja avaliada. 
Exercício 
1. Faça algoritmo (e um programa) que leia dois números do teclado e mais 
um operador, o qual pode ser '+', '-', '*', '/'. Por exemplo, o usuário pode 
digitar 
2. 5 
3. + 
10 
O algoritmo (programa) deve calcular o resultado da operação e imprimir na 
tela do computador. O programa deve perguntar ao usuário se ele quer 
parar, e caso ele não queira, pedir outros valores para fazer um novo 
cálculo. 
4. Faça um algoritmo (e um programa) capaz de ler uma quantidade não 
previamente determinada de valores positivos. O usuário deve indicar que 
quer parar de entrar valores digitando um valor especial, por exemplo -1. 
Calcule o total dos valores digitados pelo usuário.

Outros materiais