Diferença entre loop for e while

Autor: Laura McKinney
Data De Criação: 2 Abril 2021
Data De Atualização: 10 Poderia 2024
Anonim
Diferença entre loop for e while - Tecnologia
Diferença entre loop for e while - Tecnologia

Contente


Em C ++ e Java, as instruções de iteração, para loop, enquanto loop e do-while, permitem que o conjunto de instruções seja executado repetidamente, até que a condição seja verdadeira e termine assim que a condição se tornar falsa. As condições nas instruções de iteração podem ser predefinidas como no loop for ou abertas como no loop while.

Existem várias variações de loop 'for' no C ++ para aumentar sua aplicabilidade, poder e flexibilidade. Por exemplo, o loop for nos permite usar mais de uma variável dentro do loop para controlá-lo e o uso da função de convergência com o loop 'for'. Por outro lado, com o loop while, não podemos usar muitas variações, que devem ser usadas com a sintaxe padrão.

Existem algumas diferenças importantes entre os loops for e while, que são explicados mais adiante com a ajuda de um gráfico de comparação.


  1. Gráfico de comparação
  2. Definição
  3. Principais diferenças
  4. Conclusão

Gráfico de comparação

Base para Comparaçãopara enquanto
Declaraçãofor (inicialização; condição; iteração) {
// corpo do loop for
}
while (condição) {
afirmações; // corpo do loop
}
FormatoInicialização, verificação de condição, instrução de iteração são escritas na parte superior do loop.Somente a inicialização e a verificação da condição são feitas na parte superior do loop.
UsarO loop for usado apenas quando já sabíamos o número de iterações.O loop while é usado apenas quando o número de iterações não é exatamente conhecido.
CondiçãoSe a condição não for colocada no loop for, o loop iterará infinitos.Se a condição não for colocada no loop while, ele fornecerá um erro de compilação.
InicializaçãoNo loop for, a inicialização feita uma vez nunca é repetida.Loop while Se a inicialização for feita durante a verificação da condição, a inicialização será feita sempre que o loop iterar.
Declaração de IteraçãoA instrução de iteração for loop é escrita no topo, portanto, é executada somente após todas as instruções no loop serem executadas.No loop while, a instrução de iteração pode ser escrita em qualquer lugar do loop.


Definição de loop for

Em Java, existem duas formas de para rotações. A primeira forma é "tradicional" e a segunda é "para cada".

Sintaxe

A forma geral da declaração tradicional de loop.

for (inicialização; condição; iteração) {// corpo do loop for}

  • Inicialização - A inicialização da variável de controle do loop for do loop é executada apenas uma vez, durante a primeira iteração do loop. Aqui, a variável de controle do loop é inicializada, às vezes, se a variável do loop não for usada novamente em qualquer lugar do programa e for usada apenas como a variável de controle do loop, então é declarada e inicializada no loop 'for'.
  • Condição - A condição do loop 'for' é executada toda vez que o loop é iterado.
  • Incremento e iteração- A instrução de iteração é uma expressão que incrementa ou diminui a variável de controle do loop.

Sempre que o loop é executado, sua condição de inicialização é executada primeiro; então a condição é verificada. Se a condição for atendida, o corpo do loop será executado e a instrução de iteração será executada. Então, novamente, a condição é verificada para saber se o loop irá repetir ou terminar.

Em Java, a instrução de inicialização e a instrução de iteração podem incluir mais de uma instrução. Cada instrução é separada por outra por uma vírgula; em Java, uma vírgula é um separador, enquanto que em C ++, "vírgula" é um operador que pode ser usado em qualquer expressão válida.

para cada loop e sua sintaxe

O formulário "para cada" é um loop for aprimorado. A forma geral do loop for-each é a seguinte.

para (digite iter_variable: collection) bloco de instruções

Aqui, o "tipo" especifica o tipo de variável de iteração, seguido pela variável de iteração. A variável de iteração receberá o elemento da variável de coleção. O tipo deve ser o mesmo que o tipo de elementos armazenados na variável de coleção. A forma for-for do loop for automatiza a iteração do loop do início ao fim, acessando os valores em ordem seqüencial.

Exemplo

Existem vários tipos de coleção usados ​​com o loop for. Vamos discutir isso com uma matriz como uma coleção.

public class Main {public static void main (String args) {int array = {10, 20, 30, 40, 50, 60}; int add = 0; for (int c: array) {System.out.ln ("valor em c" + c); adicionar = adicionar + c; System.out.ln ("adição de elementos de matriz é" + add); }} // valor de saída em c 10 valor em c 20 valor em c 30 valor em c 40 valor em c 50 valor em c 60 o acréscimo de elementos da matriz é 210

Aqui, 'c' é uma variável de iteração; ele recebe os valores da matriz, um de cada vez, do índice mais baixo para o mais alto da matriz. Aqui, o loop itera até que todos os elementos da matriz sejam examinados. É possível finalizar o loop no meio usando "break". No entanto, a alteração na variável de iteração não afeta a matriz, pois é apenas uma variável somente leitura.

Definição do loop while

o enquanto loop é o loop mais fundamental disponível em C ++ e Java. O funcionamento de um loop while é semelhante em C ++ e Java.

Sintaxe

A declaração de um loop while é a seguinte

while (condição) {declarações; // corpo do loop}

O loop while verifica inicialmente a condição e, em seguida, executa as instruções até que o loop while da condição seja verdadeiro. A condição no loop while pode ser qualquer expressão booleana. Quando uma expressão retorna qualquer valor diferente de zero, a condição é verdadeira e, se a expressão retornar um valor zero, a condição se tornará falsa.

Se a condição se tornar verdadeira, o loop se repetirá e, se a condição se tornar falsa, o controle passará para a próxima linha do código imediatamente seguida pelo loop. As instruções ou o loop do corpo podem ser uma declaração vazia ou uma única declaração ou um bloco de declarações.

Exemplo

Vamos discutir o funcionamento de um loop while. No exemplo abaixo, o código será de 1 a 10.

// exemplo está em Java. public class Main {public static void main (String args) {int n = 0; while (n <10) {n ++; System.out.ln ("n =" + n); }}} // saída n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10

Aqui, o valor inicial de 'n' é 0, o que torna a condição no loop while verdadeira. O controle entra no corpo do loop while e o valor de 'n' é incrementado de acordo com a primeira instrução no corpo de um loop while. O valor de 'n' é ed e, em seguida, o controle volta à condição em um loop while, agora o valor de 'n' é 1, que novamente satisfaz a condição e o corpo do loop é executado novamente. Isso continua até que a condição seja verdadeira, assim que a condição se tornar falsa, o loop será encerrado.

Como o loop 'for', o loop 'while' também pode inicializar a variável de controle na parte superior do loop, ou seja, durante a verificação da condição.

// por exemplo while ((ch = getchar ())! = A) {System.out.ln ("O alfabeto de entrada" + ch); }

Aqui a variável de controle 'ch' é inicializada e a condição do loop é verificada na parte superior do loop.

Nota:

Pode ser um loop for ou um while, se houver apenas uma instrução no corpo do loop, as chaves não serão necessárias nessa condição.

  1. Em para loop, inicialização, verificação de condição e incremento ou decremento da variável de iteração são feitos explicitamente apenas na sintaxe de um loop. Contra, no enquanto loop, podemos apenas inicializar e verificar a condição na sintaxe do loop.
  2. Quando estamos cientes do número de iterações que devem ocorrer na execução de um loop, usamos para loop. Por outro lado, se não estamos cientes do número de iterações que precisam ocorrer em um loop, usamos enquanto loop.
  3. Se você não colocar a instrução de condição em para loop, levará a uma iteração infinita de um loop. Por outro lado, se você não colocar a instrução de condição no enquanto loop levará a um erro de compilação.
  4. A instrução de inicialização na sintaxe de para loop executa apenas uma vez no início do loop. Por outro lado, se enquanto loop está carregando a instrução de inicialização em sua sintaxe, a instrução de inicialização no loop while será executada toda vez que o loop iterar.
  5. A declaração de iteração no para loop será executado depois que o corpo for executado. Pelo contrário, a declaração da iteração pode ser escrita em qualquer lugar do corpo de enquanto loop, portanto, pode haver algumas instruções executadas após a execução da instrução de iteração no corpo do loop while.

Conclusão:

O loop for e loop while são instruções de iteração, mas ambos têm seu recurso distinto. O loop for tem toda a sua declaração (inicialização, condição, iteração) na parte superior do corpo do loop. Por outro lado, durante o loop while, apenas a inicialização e a condição estão no topo do corpo do loop, e a iteração pode ser gravada em qualquer lugar do corpo do loop.