Trabalhe os comandos de iteração da linguagem C: FOR, WHILE e DO..WHILE. Aprenda como repetir grupos de comandos n vezes dentro de seu programa em C. Esses comandos tornarão seus programas muito mais flexíveis a medida que permitem a execução de diferentes comandos em um só bloco.
5. Os comandos de ITERAÇÃO ou LAÇOS, permitem que um
conjunto de instruções sejam executado até que uma
determinada CONDIÇÃO seja alcançada.
A condição pode ser predefinida ou aberta.
16/04/2012
Professor Paulo Nunes 5
Laços
6. for
Faça até o limite...
16/04/2012
Professor Paulo Nunes 6
7. Utilizado para repetir uma ou mais instruções exatamente n vezes.
Normalmente utilizado quando sabemos a quantidade de vezes que as
instruções devem ser repetidas.
Sintaxe:
for (inicialização;teste;incremento) <comando>;
for (inicialização;teste;incremento) {
<comandos>;
}
Onde:
inicialização é uma instrução de inicialização executada uma única vez antes do laço
ser iniciado;
teste condição de controle do laço que é avaliada como verdadeira ou falsa;
incremento determina como a variável de controle do laço será alterada.
Usa-se as chaves “{ }” quando for executado mais de uma instrução no laco.
16/04/2012
Professor Paulo Nunes 7
Laço for
8. 16/04/2012
Professor Paulo Nunes 8
Exemplo 01 for
Inicialização do laço
Condição de controle.
Repete enquanto “conta”
menor que 10.
Incrementa a
varíavel “conta” de
um.
Saída na tela.
9. Observe no exemplo anterior:
A instrução for NÃO é finalizada com “;” ponto-e-vírgula;
A instrução printf(“Conta = %dn”,conta); é a que vai ser
repetida dez vezes, de 0 a 9.
16/04/2012
Professor Paulo Nunes 9
Exemplo 01 for
10. Imprimindo em ordem decrescente:
16/04/2012
Professor Paulo Nunes 10
Exemplo 02 for
A inicialização da variável
“conta” agora é em 9.
mudança na expressão de
controle
Decremento de 1.
Saída na tela.
11. 16/04/2012
Professor Paulo Nunes 11
Exemplo 03 for
Use as chaves quando for
um bloco de instruções.
Os comandos entre as
chaves serão executados
no laço.
12. As expressões do laço for podem conter várias instruções
separadas por vírgulas (,);
A vírgula na linguagem C, funciona como um operador que
significa “faça isto e isto”;
Um par de expressões separadas por vírgulas é avaliado da
esquerda para a direita.
16/04/2012
Professor Paulo Nunes 12
O laço for e sua flexibilidade
19. O laço do tipo while repete os comandos em seu interior
ENQUANTO a condição for VERDADEIRA.
Quando a condição for FALSA, o controle do programa passa para a
linha após o código do laço.
O bloco while pode ter uma única instrução terminada em ponto-e-
vírgula, várias instruções entre chaves ou nenhuma instrução
mantendo o ponto-e-vírgula.
Sintaxe:
while(condição) comando;
Onde:
condição é o teste lógico formado por uma expressão lógica qualquer;
comando é o comando que será executado caso condição seja
verdadeira.
16/04/2012
Professor Paulo Nunes 19
while
20. Exemplo 01 while
16/04/2012
Professor Paulo Nunes 20
Início do bloco while. Enquanto
“conta” for menor que 10...
Executa esses
dois comandos.
Fim do
bloco while
21. Ambos os comandos tem funcionamento parecido, porém o
for tem a parada de execução já predefinida no laço enquanto
que o while é mais apropriado quando existirem situações em
que o laço pode terminar inesperadamente, por condições
desenvolvidas dentro do próprio laço.
16/04/2012
Professor Paulo Nunes 21
Quando usar for e quando usar
while?
22. Exemplo 02 while
16/04/2012
Professor Paulo Nunes 22
Esse exemplo recebe uma frase
inteira até a tecla [ENTER] ser
digitada e então exibe o total de
caracteres da frase.
23. Exemplo 03 while aninhado
16/04/2012
Professor Paulo Nunes 23
Neste exemplo o usuário irá
digitar uma letra n vezes até
que a mesma seja igual a gerada
randomicamente pelo
programa.
24. do ... while
Faça enquanto for verdade...
16/04/2012
Professor Paulo Nunes 24
25. Cria uma repetição até que a condição de teste seja falsa;
Muito similar ao while, sendo que a diferença é que no do...while a
condição teste é avaliada após o laço ser executado, fazendo com
que esse laço seja executado pelo menos uma vez.
Sintaxe:
do{
<comando>;
while(condição);
Onde:
comando é o comando ou comandos que serão executados pelo
menos uma vez;
condição é a expressão lógica que controlará o laço.
As chaves são opcionais quando houver apenas uma
instrução/comando no laço.
16/04/2012
Professor Paulo Nunes 25
do ... while
26. Exemplo 01 do..while
16/04/2012
Professor Paulo Nunes 26
Neste exemplo, o teste de
adivinhação é realizado a primeira
vez, para depois ser verificado
pela condição.
27. Pode ser utilizado no corpo de qualquer estrutura de laço em
C;
Provoca a saída imediata do laço, passando o controle para o
próximo comando imediatamente após o laço;
Em estruturas aninhadas, afetará apenas o laço que o contém
e os laços internos a este.
16/04/2012
Professor Paulo Nunes 27
O comando break
30. Mizrahi, Victorine Viviane. Treinamento em linguagem C –
Módulo 1.São Paulo: McGraw-Hill, 1990.
Schildt, Herbert. C, Completo e Total – 3ª Ed. Revista e
Atualizada. São Paulo: Pearson Education do Brasil, 1997.
16/04/2012
Professor Paulo Nunes 30
Referências