Java/Comandos de iteração

Neste capítulo veremos como fazer para que o seu programa execute uma sequência de instruções um determinado número de vezes ou até que determinada condição seja satisfeita.

O comando for

editar

O comando for deve ser usado sempre que se deseja que um código seja executado um determinado número de vezes. A sintaxe do comando for é:

 for(INICIALIZAÇÃO;CONDIÇÃO;EXPRESSÃO){
     COMANDO(S);
 }

Quando o comando "for" é executado, a primeira coisa a ser feita é a inicialização prevista. Em seguida, verifica-se se CONDIÇÃO é "falso". Em caso afirmativo, o loop não será executado. Caso contrário, todos os comandos existentes no bloco abaixo do comando são executados e a operação prevista em EXPRESSÃO é executada. Mais uma vez, a CONDIÇÃO é analisada. Caso ela seja falsa, o loop é interrompido. Caso contrário, ela continua. Exemplos de uso:

 for(int i=1;i<=10;i++)         //O loop é executado 10 vezes
     System.out.println(i+" "); //Será impressa na tela uma contagem de 1 até 10.

O comando while e do-while

editar

O comando while deve ser usado sempre que não sabemos quantas vezes um loop será executado. A sintaxe do comando é:

 while(CONDIÇÃO){
     COMANDO(S);
 }

Quando o comando "while" é executado, verifica-se o valor retornado por CONDIÇÃO. Se for "verdadeiro", a sequência de comandos presente no bloco logo abaixo do comando é executada. Ao fim, o valor de CONDIÇÃO é verificado novamente. O loop só para quando o valor retornado por CONDIÇÃO for "falso".

Além do comando "while", também pode ser usado o comando "do-while" que segue a seguinte sintaxe:

 do{
     COMANDO(S);
 }while(CONDIÇÃO);

Ele funciona exatamente igual ao comando "while". A diferença é que a CONDIÇÃO só é analisada depois que os comandos são executados. Isso significa que o comando "do-while" sempre executa o conjunto de comandos ao menos uma vez. Mesmo que a condição seja inicialmente falsa. Exemplos de uso:

Exemplo 1:

 while(true){
     System.out.printls("Estou preso!"); //Como aqui CONDIÇÃO sempre é verdadeira, este comando sempre será executado.
 }

Exemplo 2:

 while(variavel%435==4){ 
      variavel+=(variavel*3);  //O numero de vezes que este comando será executado depende do valor inicial da variável
 }

Comandos de controle de fluxo

editar

Existem alguns comandos que foram feitos para facilitar o uso de loops em programas. Eles permitem que você controle melhor o fluxo de execução de um programa. São eles:

O comando break

editar

O comando break é um comando bastante importante no desenvolvimento da maior parte dos programas de computador, ele é usado para sair imediatamente de um laço (loop, em inglês), independente do valor de CONDIÇÃO. Ele pode ser executado dentro de um while, for, do ... while ou switch (estes comandos serão discutidos mais adiante neste livro), fazendo um saída imediata dessa instrução. Passando para o execução do próximo comando.

A sintaxe do comando é bastante simples:

 break;

Exemplos de uso: No exemplo abaixo temos um código escrito em Java, onde em um loop for é interrompido quando a variável inteira contador se torna igual a 5.

 public class BreakTeste
{
    public static void main( String args[] )
    {
    int contador; //Variável de controle usada como referência
   
    for ( contador = 1; contador <= 10; contador++ )//Laço, será repetido 10 vezes
        {
        if ( contador == 5 ) //Se o contador chegar até 5
            break;        //Termina o loop quando a condição do if se tornar verdadeira
       
        System.out.printf( "%d ", contador);
        }//Termino da instrução for
   
    System.out.printf( "\nInterrompe o contador quando o contador = %d\n",contador );
    }//Fim do main
}//Fim da classe BreakTest

O comando continue

editar

O comando continue serve para encerrar a execução de comandos e verificar o valor de CONDIÇÃO. Caso o valor seja "verdadeiro", a iteração continua. Caso contrário, ela se encerra. Exemplos de uso:

 for(int i=1;i<=10;i++){        //O loop é executado 10 vezes
     if(i%2==0)
          continue;
     System.out.println(i+" "); //Será impressa na tela os números ímpares entre 1 e 10
 }


Neste capítulo veremos como fazer para que o seu programa execute uma sequência de instruções um determinado número de vezes ou até que determinada condição seja satisfeita.

O comando for

editar

O comando for deve ser usado sempre que se deseja que um código seja executado um determinado número de vezes. A sintaxe do comando for é:

 for(INICIALIZAÇÃO;CONDIÇÃO;EXPRESSÃO){
     COMANDO(S);
 }

Quando o comando "for" é executado, a primeira coisa a ser feita é a inicialização prevista. Em seguida, verifica-se se CONDIÇÃO é "falso". Em caso afirmativo, o loop não será executado. Caso contrário, todos os comandos existentes no bloco abaixo do comando são executados e a operação prevista em EXPRESSÃO é executada. Mais uma vez, a CONDIÇÃO é analisada. Caso ela seja falsa, o loop é interrompido. Caso contrário, ela continua. Exemplos de uso:

 for(int i=1;i<=10;i++)         //O loop é executado 10 vezes
     System.out.println(i+" "); //Será impressa na tela uma contagem de 1 até 10.

O comando while e do-while

editar

O comando while deve ser usado sempre que não sabemos quantas vezes um loop será executado. A sintaxe do comando é:

 while(CONDIÇÃO){
     COMANDO(S);
 }

Quando o comando "while" é executado, verifica-se o valor retornado por CONDIÇÃO. Se for "verdadeiro", a sequência de comandos presente no bloco logo abaixo do comando é executada. Ao fim, o valor de CONDIÇÃO é verificado novamente. O loop só para quando o valor retornado por CONDIÇÃO for "falso".

Além do comando "while", também pode ser usado o comando "do-while" que segue a seguinte sintaxe:

 do{
     COMANDO(S);
 }while(CONDIÇÃO);

Ele funciona exatamente igual ao comando "while". A diferença é que a CONDIÇÃO só é analisada depois que os comandos são executados. Isso significa que o comando "do-while" sempre executa o conjunto de comandos ao menos uma vez. Mesmo que a condição seja inicialmente falsa. Exemplos de uso:

Exemplo 1:

 while(true){
     System.out.printls("Estou preso!"); //Como aqui CONDIÇÃO sempre é verdadeira, este comando sempre será executado.
 }

Exemplo 2:

 while(variavel%435==4){ 
      variavel+=(variavel*3);  //O numero de vezes que este comando será executado depende do valor inicial da variável
 }

Comandos de controle de fluxo

editar

Existem alguns comandos que foram feitos para facilitar o uso de loops em programas. Eles permitem que você controle melhor o fluxo de execução de um programa. São eles:

O comando break

editar

O comando break é um comando bastante importante no desenvolvimento da maior parte dos programas de computador, ele é usado para sair imediatamente de um laço (loop, em inglês), independente do valor de CONDIÇÃO. Ele pode ser executado dentro de um while, for, do ... while ou switch (estes comandos serão discutidos mais adiante neste livro), fazendo um saída imediata dessa instrução. Passando para o execução do próximo comando.

A sintaxe do comando é bastante simples:

 break;

Exemplos de uso: No exemplo abaixo temos um código escrito em Java, onde em um loop for é interrompido quando a variável inteira contador se torna igual a 5.

 public class BreakTeste
{
    public static void main( String args[] )
    {
    int contador; //Variável de controle usada como referência
   
    for ( contador = 1; contador <= 10; contador++ )//Laço, será repetido 10 vezes
        {
        if ( contador == 5 ) //Se o contador chegar até 5
            break;        //Termina o loop quando a condição do if se tornar verdadeira
       
        System.out.printf( "%d ", contador);
        }//Termino da instrução for
   
    System.out.printf( "\nInterrompe o contador quando o contador = %d\n",contador );
    }//Fim do main
}//Fim da classe BreakTest

O comando continue

editar

O comando continue serve para encerrar a execução de comandos e verificar o valor de CONDIÇÃO. Caso o valor seja "verdadeiro", a iteração continua. Caso contrário, ela se encerra. Exemplos de uso:

 for(int i=1;i<=10;i++){        //O loop é executado 10 vezes
     if(i%2==0)
          continue;
     System.out.println(i+" "); //Será impressa na tela os números ímpares entre 1 e 10
 }