Faça Sua Pesquisa.

terça-feira, 14 de fevereiro de 2012

O Comando for LING.C


  • O loop infinito
  • O loop sem conteúdo

for é a primeira de uma série de três estruturas para se trabalhar com loops de repetição. As outras são  while e  do. As três compõem a segunda família de comandos de controle de fluxo. Podemos pensar nesta família como sendo a das estruturas de repetição controlada.
 Como já foi dito, o loop for é usado para repetir um comando, ou bloco de comandos, diversas vezes, de maneira que se possa ter um bom controle sobre o loop. Sua forma geral é:
 for (inicialização;condição;incremento) declaração;
 O melhor modo de se entender o loop for é ver como ele funciona "por dentro". O loop for é equivalente a se fazer o seguinte:

inicialização;
if (condição)
{
declaração; incremento; "Volte para o comando if" }
Podemos ver, então, que o for executa a inicialização incondicionalmente e testa a condição. Se a condição for falsa ele não faz mais nada. Se a condição for verdadeira ele executa a declaração, faz o incremento e volta a testar a condição. Ele fica repetindo estas operações até que a condição seja falsa. Um ponto importante é que podemos omitir qualquer um dos elementos do for, isto é, se não quisermos uma inicialização poderemos omiti-la. Abaixo vemos um programa que coloca os primeiros 100 números inteiros na tela:

#include <stdio.h>
int main ()
{
 int count;
 for (count=1; count<=100; count++) printf ("%d ",count);
 return(0);
}
Note que, no exemplo acima, há uma diferença em relação ao exemplo anterior. O incremento da variável count é feito usando o operador de incremento que nós agora já conhecemos. Esta é a forma usual de se fazer o incremento (ou decremento) em um loopfor.
 O for na linguagem C é  bastante flexível. Temos acesso à inicialização, à condição e ao incremento. Isto nos permite fazer o que quisermos com o comando, conforme veremos a seguir.

O loop infinito

O loop infinito tem a forma
 for (inicialização; ;incremento) declaração;
 Este loop chama-se loop infinito porque será executado para sempre (não existindo a condição, ela será sempre considerada verdadeira), a não ser que ele seja interrompido. Para interromper um loop como este usamos o comando break. O comandobreak vai quebrar o loop infinito e o programa continuará sua execução normalmente.
  Como exemplo vamos ver um programa que faz a leitura de uma tecla e sua impressão na tela, até que o usuario aperte uma tecla sinalizadora de final (um FLAG). O nosso FLAG será a letra 'X'.

#include <stdio.h>
#include <conio.h>
int main ()
{
 int Count;
 char ch;
 for (Count=1;;Count++)
        {
         ch = getch();
         if (ch == 'X') break;
         printf("\nLetra: %c",ch);
        }
 return(0);
}

O loop sem conteúdo

Loop sem conteúdo é aquele no qual se omite a declaração. Sua forma geral é (atenção ao ponto e vírgula!):
 for (inicialização;condição;incremento);
 Uma das aplicações desta estrutura é gerar tempos de espera. O programa
#include <stdio.h>
int main ()
{
 long int i;
 printf("\a");               /* Imprime o caracter de alerta (um beep) */
 for (i=0; i<10000000; i++);  /* Espera 10.000.000 de iteracoes */
 printf("\a");                /* Imprime outro caracter de alerta */
 return(0);
}

0 comentários:

Postar um comentário

TecCodigos Copyright © 2011 | Template created by O Pregador | Powered by Blogger