Laço For
Uma grande desvantagem do laço while é que não é possível especificar um número exato de iterações e controlar totalmente a execução do laço. Por isso existe o laço for, que fornece todas as ferramentas para o controle adequado do laço e também é utilizado ao trabalhar com arrays e coleções.
Laço for
O laço for é uma instrução de controle de fluxo que permite executar repetidamente um bloco de código por um número especificado de vezes. É comumente utilizado quando se conhece o número exato de iterações ou ao iterar sobre uma coleção ou array.
A sintaxe do laço for em Java é a seguinte:
Main.java
123for (initialization; condition; update) { // code to be executed }
Se analisarmos passo a passo, inicialmente, uma variável é inicializada em uma seção especial para isso (fizemos o mesmo no laço while, apenas fora do laço). Em seguida, define-se a condição para quando o laço deve ser executado (por exemplo, enquanto a variável for menor que 10). Após isso, utiliza-se um incremento ou decremento. Abaixo está um fluxograma e uma explicação do funcionamento de cada um dos blocos do laço:
Veja a divisão de cada parte do laço for:
- Inicialização: configuração inicial executada apenas uma vez no início do laço. Normalmente, declara-se e inicializa-se uma variável de controle aqui. Por exemplo,
int i = 0; - Condição: condição verificada antes de cada iteração. Se a condição for verdadeira, o corpo do laço é executado. Se for falsa, o laço é encerrado. Por exemplo,
i < 10; - Expressão de incremento/decremento: código executado após cada iteração. Normalmente, atualiza-se a variável de controle aqui. Por exemplo,
i++(equivalente ai = i + 1); - Código dentro do laço: bloco de código executado a cada iteração do laço. Qualquer código Java válido pode ser colocado dentro do corpo do laço.
Aqui está um exemplo que demonstra o uso de um laço for:
Main.java
123456789package com.example; public class Main { public static void main(String[] args) { for (int i = 0; i < 10; i++) { System.out.println("Iteration: " + i); } } }
Neste exemplo, o laço será executado 10 vezes. Ele começa com i inicializado em 0, verifica se i é menor que 10, executa o corpo do laço e, em seguida, atualiza i incrementando-o em 1. Esse processo se repete até que a condição se torne falsa.
Vale ressaltar que, neste laço, podemos utilizar a variável que criamos. No nosso caso, exibimos a variável i para mostrar o número da iteração na tela.
Isso é muito útil, especialmente quando precisamos que nossa variável i seja utilizada no código.
Vamos analisar outro exemplo em que precisamos exibir apenas os números pares no intervalo de 1 a 30.
Para determinar se um número é par ou não, utilizaremos o operador %. O operador % em Java é usado para obter o resto de uma divisão. Ele auxilia a verificar se um número é divisível por outro, o que é útil para determinar se um número é par.
main.java
1234567891011package com.example; public class Main { public static void main(String[] args) { for (int i = 0; i < 30; i++) { if (i % 2 == 0) { // Check if `i` is even System.out.println(i); } } } }
Ótimo, no código acima, utilizamos a variável i ao verificar a condição. Ou seja, i representa os números que estamos considerando. Em seguida, verificamos se o número i é par usando a operação de módulo (%). Se o resto da divisão por 2 for zero, então o número é par, ou seja, é divisível por 2 sem resto.
Vamos imaginar dividir 3 por 2. O resto da divisão é 1. Usando o operador %, 3 % 2 retorna o resto, que é 1. Portanto, na expressão i % 2 == 0, o resultado é falso porque o resto não é 0, indicando que 3 é um número ímpar.
Além disso, preste atenção em como definimos a condição para i. O algoritmo das nossas ações permanece o mesmo, mas na condição do laço, limitamos i ao valor 30, conforme especificado na tarefa.
1. Quantas iterações haverá?
2. Quantas vezes i será exibido
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 show me an example of a for loop that prints even numbers from 1 to 30?
How does the modulo operator work in Java?
Can you explain the difference between a for loop and a while loop in more detail?
Awesome!
Completion rate improved to 2.7
Laço For
Deslize para mostrar o menu
Uma grande desvantagem do laço while é que não é possível especificar um número exato de iterações e controlar totalmente a execução do laço. Por isso existe o laço for, que fornece todas as ferramentas para o controle adequado do laço e também é utilizado ao trabalhar com arrays e coleções.
Laço for
O laço for é uma instrução de controle de fluxo que permite executar repetidamente um bloco de código por um número especificado de vezes. É comumente utilizado quando se conhece o número exato de iterações ou ao iterar sobre uma coleção ou array.
A sintaxe do laço for em Java é a seguinte:
Main.java
123for (initialization; condition; update) { // code to be executed }
Se analisarmos passo a passo, inicialmente, uma variável é inicializada em uma seção especial para isso (fizemos o mesmo no laço while, apenas fora do laço). Em seguida, define-se a condição para quando o laço deve ser executado (por exemplo, enquanto a variável for menor que 10). Após isso, utiliza-se um incremento ou decremento. Abaixo está um fluxograma e uma explicação do funcionamento de cada um dos blocos do laço:
Veja a divisão de cada parte do laço for:
- Inicialização: configuração inicial executada apenas uma vez no início do laço. Normalmente, declara-se e inicializa-se uma variável de controle aqui. Por exemplo,
int i = 0; - Condição: condição verificada antes de cada iteração. Se a condição for verdadeira, o corpo do laço é executado. Se for falsa, o laço é encerrado. Por exemplo,
i < 10; - Expressão de incremento/decremento: código executado após cada iteração. Normalmente, atualiza-se a variável de controle aqui. Por exemplo,
i++(equivalente ai = i + 1); - Código dentro do laço: bloco de código executado a cada iteração do laço. Qualquer código Java válido pode ser colocado dentro do corpo do laço.
Aqui está um exemplo que demonstra o uso de um laço for:
Main.java
123456789package com.example; public class Main { public static void main(String[] args) { for (int i = 0; i < 10; i++) { System.out.println("Iteration: " + i); } } }
Neste exemplo, o laço será executado 10 vezes. Ele começa com i inicializado em 0, verifica se i é menor que 10, executa o corpo do laço e, em seguida, atualiza i incrementando-o em 1. Esse processo se repete até que a condição se torne falsa.
Vale ressaltar que, neste laço, podemos utilizar a variável que criamos. No nosso caso, exibimos a variável i para mostrar o número da iteração na tela.
Isso é muito útil, especialmente quando precisamos que nossa variável i seja utilizada no código.
Vamos analisar outro exemplo em que precisamos exibir apenas os números pares no intervalo de 1 a 30.
Para determinar se um número é par ou não, utilizaremos o operador %. O operador % em Java é usado para obter o resto de uma divisão. Ele auxilia a verificar se um número é divisível por outro, o que é útil para determinar se um número é par.
main.java
1234567891011package com.example; public class Main { public static void main(String[] args) { for (int i = 0; i < 30; i++) { if (i % 2 == 0) { // Check if `i` is even System.out.println(i); } } } }
Ótimo, no código acima, utilizamos a variável i ao verificar a condição. Ou seja, i representa os números que estamos considerando. Em seguida, verificamos se o número i é par usando a operação de módulo (%). Se o resto da divisão por 2 for zero, então o número é par, ou seja, é divisível por 2 sem resto.
Vamos imaginar dividir 3 por 2. O resto da divisão é 1. Usando o operador %, 3 % 2 retorna o resto, que é 1. Portanto, na expressão i % 2 == 0, o resultado é falso porque o resto não é 0, indicando que 3 é um número ímpar.
Além disso, preste atenção em como definimos a condição para i. O algoritmo das nossas ações permanece o mesmo, mas na condição do laço, limitamos i ao valor 30, conforme especificado na tarefa.
1. Quantas iterações haverá?
2. Quantas vezes i será exibido
Obrigado pelo seu feedback!