logo

Loop For vs. While em C

Compreendendo a diferença entre um loop for e um loop while

As instruções de iteração em C++, como loop for, loop while e loop do-while, permitem que um conjunto de instruções seja executado repetidamente até que a condição seja verdadeira e, em seguida, termine quando a condição for falsa. As instruções de iteração podem ter condições predefinidas, como em um loop for, ou condições abertas, como em um loop while.

Em C++, uma variedade de variações de loop 'for' estão implícitas para aumentar a aplicabilidade, o poder e a flexibilidade da linguagem. Por exemplo, o loop for nos permite controlar o loop usando múltiplas variáveis ​​dentro dele, bem como o uso da função converge com o loop 'for'. Por outro lado, não podemos usar muitas variações com o loop while; deve ser usado com a sintaxe padrão.

Existem algumas diferenças significativas entre os loops for e while, que são explicadas com mais detalhes usando um gráfico de comparação.

Loop For vs. While em C

For Loop é definido como

Existem dois tipos de loops for em Java. A primeira é a forma “tradicional”, enquanto a segunda é a forma “para cada”.

A forma mais geral de uma instrução de loop for.

 for (initialization; condition; iteration) { //body of for loop } 
    Inicialização:A variável de controle do loop for é inicializada apenas uma vez, durante a primeira iteração do loop. A variável de controle do loop é inicializada aqui; se a variável do loop nunca mais for usada no programa e for usada apenas como variável de controle do loop, ela será declarada e inicializada no loop 'for'.Doença:A condição do loop 'for' é executada cada vez que o loop é iterado.
  • A instrução de iteração é uma expressão que aumenta ou diminui a variável de controle do loop.

Quando o loop é executado, a condição de inicialização é executada primeiro, seguida pela verificação da condição. Se a condição for atendida, o corpo do loop será executado, seguido pela instrução de iteração. A condição é então verificada novamente para determinar se o loop irá repetir ou terminar.

Em Java, as instruções de inicialização e iteração podem conter múltiplas instruções. Uma vírgula separa cada afirmação; em Java, uma vírgula é um separador; em C++, uma vírgula é um operador que pode ser usado em qualquer expressão válida.

A sintaxe do loop for-each

O formulário 'for-each' é uma versão mais avançada do loop for. O loop for-each assume a seguinte forma geral.

 for(type iter_variable: collection) statement-block 

O parâmetro 'type' especifica o tipo de variável de iteração, que é seguida pela variável de iteração. O elemento da variável de coleção será passado para a variável de iteração. O tipo deve corresponder ao tipo de elementos na variável de coleção. A forma for-each do loop for automatiza a iteração do loop do início ao fim, acessando os valores em ordem sequencial.

Exemplo

Existem vários tipos de coleções que podem ser usadas com um loop for. Vamos falar sobre isso usando um array como coleção.

passagem de pedidos por correio
 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.println( 'value in c ' + c); add = add+c; } System.out.println('additon of array elements is ' +add); } } 

Saída:

 value in c 10 value in c 20 value in c 30 value in c 40 value in c 50 value in c 60 additon of array elements is 210 

'c' é uma variável de iteração neste caso; ele recebe os valores do array[], um por um, do menor ao maior índice do array. O loop itera até que todos os elementos do array sejam examinados. O loop pode ser quebrado no meio usando 'break'. A mudança na variável de iteração, por outro lado, não tem efeito no array porque é uma variável somente leitura.

Enquanto o loop é definido como

O loop while é o loop mais básico em C++ e Java. A operação de um loop while é semelhante em C++ e Java.

ator govinda

Sintaxe

A seguir está a declaração do loop while:

 while ( condition) { statements; //body of loop } 

O loop while primeiro verifica a condição e depois executa as instruções até que a condição no loop while seja verdadeira. Em um loop while, a condição pode ser qualquer expressão booleana. Quando uma expressão retorna um valor diferente de zero, a condição é verdadeira; quando retorna um valor zero, a condição é falsa.

Se a condição for verdadeira, o loop se itera; se a condição for falsa, o controle é passado para a linha de código imediatamente após o loop. O loop ou instruções do corpo podem ser uma instrução vazia, uma única instrução ou um bloco de instruções.

Exemplo

Vejamos como funciona um loop while. O código no exemplo abaixo será impresso de 1 a 10.

 public class Main { public static void main (String args[]) { int n=0; while(n<10) { n++; system.out.println('n=" +n); } } } &lt;/pre&gt; &lt;p&gt; &lt;strong&gt;Output:&lt;/strong&gt; &lt;/p&gt; &lt;pre&gt; n=1 n=2 n=3 n=4 n=5 n=6 n=7 n=8 n=9 n=10 &lt;/pre&gt; &lt;p&gt;The initial value of " n' in this case is 0, which makes the condition while loop true. control then enters loop's body, where value of 'n' incremented accordance with first statement.< p> <p>The value of &apos;n&apos; is printed, then control returns to the condition in a while loop, where the value of &apos;n&apos; is now 1, satisfying the condition once more, and the body of the loop is executed once more. This continues until the condition becomes false, at which point the loop is terminated.</p> <p>The &apos;while&apos; loop, like the &apos;for&apos; loop, can initialise the control variable at the beginning of the loop, i.e. during condition checking.</p> <pre> //for example while((ch = getchar( ) ) != &apos;A&apos;) { System.out.println(&apos; The input alphabet &apos; +ch); } </pre> <p>At the top of the loop, the control variable &apos;ch&apos; is initialised, and the loop&apos;s condition is verified.</p> <h4>Note: If there is only one statement in the body of the loop, whether it is a for loop or a while loop, the curly braces are not required.</h4> <h3>In C, what is the difference between a for loop and a while?</h3> <table class="table"> <tr> <th>Parameters</th> <th>For Loop</th> <th>While Loop</th> </tr> <tr> <td> <strong>Declaration</strong> </td> <td>for(initialization ; condition ; iteration ) { <br> //body of &apos;for&apos; loop <br> }</td> <td>initialization <br>while ( condition ) { <br>statements; <br>//body of loop <br>}</td> </tr> <tr> <td> <strong>Format.</strong> </td> <td>At the top of the loop, initialization, condition checking, and iteration statements are written.</td> <td>At the top of the loop, only initialization and condition checking are performed.</td> </tr> <tr> <td> <strong>Use.</strong> </td> <td>The &apos;for&apos; loop was only used when the number of iterations was already known.</td> <td>When the number of iterations is unknown, the &apos;while&apos; loop is used.</td> </tr> <tr> <td> <strong>Condition.</strong> </td> <td>If the condition is not included in the &apos;for&apos; loop, the loop iterates indefinitely.</td> <td>If the condition is not included in the &apos;while&apos; loop, a compilation error occurs.</td> </tr> <tr> <td> <strong>Initialization</strong> </td> <td>The initialization is never repeated in a &apos;for&apos; loop.</td> <td>If initialization is performed during condition checking in a while loop, initialization is performed each time the loop iterates.</td> </tr> <tr> <td> <strong>Iteration assertion</strong> </td> <td>Because the iteration statement in the &apos;for&apos; loop is written at the top, it executes only after all statements in the loop have been executed.</td> <td>The iteration statement in a &apos;while&apos; loop can be written anywhere in the loop.</td> </tr> </table> <h2>The Key Differences Between for and while loop</h2> <ul> <li>Initialization, condition checking, and increment or decrement of iteration variables are all done explicitly in the loop syntax only. In contrast, in the while loop, we can only initialise and check the condition in the loop syntax.</li> <li>When we know the number of iterations that must occur in a loop execution, we use the for loop. On the other hand, if we do not know how many iterations must occur in a loop, we use a while loop.</li> <li>If you do not include a condition statement in the for loop, the loop will loop indefinitely. In contrast, failing to include a condition statement in the while loop will result in a compilation error.</li> <li>The initialization statement in the for loop syntax is only executed once at the beginning of the loop. If the while loop&apos;s syntax includes an initialization statement, the initialization statement will be executed each time the loop iterates.</li> <li>The iteration statement in the for loop will run after the body of the for loop. On the contrary, because the iteration statement can be written anywhere in the body of the while loop, there may be some statements that execute after the iteration statement in the body of the while loop is executed.</li> </ul> <h2>Conclusion</h2> <p>Loops are thus a collection of commands that must be used in a specific order. If the loop structure is incorrect, the programming will display the syntax error. Loops run to obtain a result or to satisfy a condition or set of conditions. It is the foundation of all programming languages.</p> <p>During execution, the loop structure asks a question and executes until the answer is satisfactory. The same question is asked again and again until the new statement is applied. The looping process continues indefinitely until the programme reaches a breakpoint. In the event that the breaking point is not reached, the programme will crash.</p> <p>The for and while loops are both conditional statements. A for loop is a single-line command that will be executed repeatedly. While loops can be single-lined or contain multiple commands for a single condition.</p> <p>Both the for loop and the while loop are important in computer languages for obtaining results. The condition is met if the command syntax is correct.</p> <p>Both the for loop and the while loop are iteration statements, but they have distinct characteristics. The for loop declares everything (initialization, condition, iteration) at the top of the loop body. In contrast, only initialization and condition are at the top of the body of the loop in a while loop, and iteration can be written anywhere in the body of the loop.</p> <hr></10)>

No topo do loop, a variável de controle 'ch' é inicializada e a condição do loop é verificada.

Nota: Se houver apenas uma instrução no corpo do loop, seja um loop for ou um loop while, as chaves não serão necessárias.

Em C, qual é a diferença entre um loop for e um while?

Parâmetros Para loop Enquanto Loop
Declaração for(inicialização; condição; iteração) {
//corpo do loop 'for'
}
inicialização
enquanto (condição) {
declarações;
//corpo do loop
}
Formatar. No topo do loop, são escritas instruções de inicialização, verificação de condições e iteração. No topo do loop, apenas a inicialização e a verificação de condições são realizadas.
Usar. O loop 'for' só foi usado quando o número de iterações já era conhecido. Quando o número de iterações é desconhecido, o loop 'while' é usado.
Doença. Se a condição não estiver incluída no loop 'for', o loop itera indefinidamente. Se a condição não estiver incluída no loop 'while', ocorrerá um erro de compilação.
Inicialização A inicialização nunca é repetida em um loop 'for'. Se a inicialização for executada durante a verificação de condições em um loop while, a inicialização será executada cada vez que o loop iterar.
Asserção de iteração Como a instrução de iteração no loop 'for' é escrita na parte superior, ela é executada somente após todas as instruções do loop terem sido executadas. A instrução de iteração em um loop 'while' pode ser escrita em qualquer lugar do loop.

As principais diferenças entre o loop for e while

  • Inicialização, verificação de condição e incremento ou decremento de variáveis ​​de iteração são todos feitos explicitamente apenas na sintaxe do loop. Por outro lado, no loop while, só podemos inicializar e verificar a condição na sintaxe do loop.
  • Quando sabemos o número de iterações que devem ocorrer na execução de um loop, usamos o loop for. Por outro lado, se não sabemos quantas iterações devem ocorrer em um loop, usamos um loop while.
  • Se você não incluir uma instrução de condição no loop for, o loop será repetido indefinidamente. Por outro lado, deixar de incluir uma instrução de condição no loop while resultará em um erro de compilação.
  • A instrução de inicialização na sintaxe do loop for é executada apenas uma vez no início do loop. Se a sintaxe do loop while incluir uma instrução de inicialização, a instrução de inicialização será executada cada vez que o loop iterar.
  • A instrução de iteração no loop for será executada após o corpo do loop for. Pelo contrário, como a instrução de iteração pode ser escrita em qualquer lugar no corpo do loop while, pode haver algumas instruções que são executadas após a execução da instrução de iteração no corpo do loop while.

Conclusão

Loops são, portanto, uma coleção de comandos que devem ser usados ​​em uma ordem específica. Se a estrutura do loop estiver incorreta, a programação exibirá o erro de sintaxe. Os loops são executados para obter um resultado ou para satisfazer uma condição ou conjunto de condições. É a base de todas as linguagens de programação.

Durante a execução, a estrutura do loop faz uma pergunta e executa até que a resposta seja satisfatória. A mesma pergunta é feita repetidas vezes até que a nova afirmação seja aplicada. O processo de loop continua indefinidamente até que o programa atinja um ponto de interrupção. Caso o ponto de ruptura não seja atingido, o programa irá travar.

Os loops for e while são instruções condicionais. Um loop for é um comando de linha única que será executado repetidamente. Os loops while podem ser de linha única ou conter vários comandos para uma única condição.

Tanto o loop for quanto o loop while são importantes em linguagens de computador para a obtenção de resultados. A condição será atendida se a sintaxe do comando estiver correta.

Tanto o loop for quanto o loop while são instruções de iteração, mas possuem características distintas. O loop for declara tudo (inicialização, condição, iteração) na parte superior do corpo do loop. Em contraste, apenas a inicialização e a condição estão no topo do corpo do loop em um loop while, e a iteração pode ser escrita em qualquer lugar no corpo do loop.