While, Do-While
Imagine um cenário em que é necessário executar determinadas tarefas repetidamente, como ler dados de um sensor, tentar entradas de senha ou contar palavras em uma frase. Nessas situações, laços de repetição são utilizados.
Os laços permitem executar blocos específicos de código várias vezes, seja dezenas, centenas ou até milhares de vezes. Compreender o conceito de laços é fundamental em programação. Este curso aborda os laços básicos: o laço while, o laço do-while e o laço for.
Laço While
Este laço continua executando enquanto uma condição específica for satisfeita. Quando a condição não é mais atendida, o laço é encerrado.
main.c
123while (condition) { // Loop body }
Um uso básico de um loop é exibir a contagem de suas repetições:
Main.c
1234567891011121314#include <stdio.h> int main() { int iterations = 1; while (iterations <= 10) { printf("%d\n", iterations); iterations++; // `iterations = iterations + 1;` } return 0; }
Para interromper esse loop, uma condição de parada é essencial. Uma abordagem simples é utilizar um contador para acompanhar o número de execuções do loop.
Uma iteração refere-se a um único ciclo dentro de um loop. Portanto, se o loop executa o bloco de código 10 vezes, ele completou 10 iterações.
A linha iterations++; é fundamental, pois incrementa o contador (int iterations) a cada passagem. O contador então define as condições para encerrar o loop.
É imprescindível estabelecer condições para sair do loop. Caso contrário, resultará em um loop infinito.
Main.c
12345678910111213141516#include <stdio.h> int main() { int array[] = { 3, 6, 2, 134, 45, 2, 564, 8, 3, 531 }; int i = 0; // Index of array while (i < 10 ) { printf("Index of element: %d\tValue of element: %d\n", i, array[i]); i++; // `i = i + 1` } return 0; }
Foco na expressão array[i].
Aqui, a variável i indica o índice dos elementos de array[].
A cada ciclo, a variável i é incrementada em 1. Isso significa que, durante cada ciclo, a expressão array[i] acessa o próximo elemento do array:
A principal diferença entre os laços do-while e while é que o primeiro garante pelo menos uma execução, mesmo que sua condição seja inicialmente falsa.
main.c
123do { // Do something } while (condition);
Esse tipo de laço é útil para criar interfaces de usuário básicas. Por exemplo, ao solicitar uma senha, pois permite continuar solicitando até que a entrada seja válida. Um laço no estilo do-while é ideal nesse caso, já que o prompt deve aparecer pelo menos uma vez, enquanto um laço while funciona quando você só entra se uma pré-condição for atendida.
Main.c
123456789101112#include <stdio.h> int main() { int i = 0; do { printf("Condition `i == 1` is false, because i = 0, but loop is working...\n"); } while (i == 1); printf("Loop is over\n"); return 0; }
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Can you explain the difference between a while loop and a do-while loop with examples?
How does the counter help in terminating a loop?
Can you show how to use a loop to read data from a sensor?
Awesome!
Completion rate improved to 2.63
While, Do-While
Deslize para mostrar o menu
Imagine um cenário em que é necessário executar determinadas tarefas repetidamente, como ler dados de um sensor, tentar entradas de senha ou contar palavras em uma frase. Nessas situações, laços de repetição são utilizados.
Os laços permitem executar blocos específicos de código várias vezes, seja dezenas, centenas ou até milhares de vezes. Compreender o conceito de laços é fundamental em programação. Este curso aborda os laços básicos: o laço while, o laço do-while e o laço for.
Laço While
Este laço continua executando enquanto uma condição específica for satisfeita. Quando a condição não é mais atendida, o laço é encerrado.
main.c
123while (condition) { // Loop body }
Um uso básico de um loop é exibir a contagem de suas repetições:
Main.c
1234567891011121314#include <stdio.h> int main() { int iterations = 1; while (iterations <= 10) { printf("%d\n", iterations); iterations++; // `iterations = iterations + 1;` } return 0; }
Para interromper esse loop, uma condição de parada é essencial. Uma abordagem simples é utilizar um contador para acompanhar o número de execuções do loop.
Uma iteração refere-se a um único ciclo dentro de um loop. Portanto, se o loop executa o bloco de código 10 vezes, ele completou 10 iterações.
A linha iterations++; é fundamental, pois incrementa o contador (int iterations) a cada passagem. O contador então define as condições para encerrar o loop.
É imprescindível estabelecer condições para sair do loop. Caso contrário, resultará em um loop infinito.
Main.c
12345678910111213141516#include <stdio.h> int main() { int array[] = { 3, 6, 2, 134, 45, 2, 564, 8, 3, 531 }; int i = 0; // Index of array while (i < 10 ) { printf("Index of element: %d\tValue of element: %d\n", i, array[i]); i++; // `i = i + 1` } return 0; }
Foco na expressão array[i].
Aqui, a variável i indica o índice dos elementos de array[].
A cada ciclo, a variável i é incrementada em 1. Isso significa que, durante cada ciclo, a expressão array[i] acessa o próximo elemento do array:
A principal diferença entre os laços do-while e while é que o primeiro garante pelo menos uma execução, mesmo que sua condição seja inicialmente falsa.
main.c
123do { // Do something } while (condition);
Esse tipo de laço é útil para criar interfaces de usuário básicas. Por exemplo, ao solicitar uma senha, pois permite continuar solicitando até que a entrada seja válida. Um laço no estilo do-while é ideal nesse caso, já que o prompt deve aparecer pelo menos uma vez, enquanto um laço while funciona quando você só entra se uma pré-condição for atendida.
Main.c
123456789101112#include <stdio.h> int main() { int i = 0; do { printf("Condition `i == 1` is false, because i = 0, but loop is working...\n"); } while (i == 1); printf("Loop is over\n"); return 0; }
Obrigado pelo seu feedback!