Pular para o conteúdo principal
Módulo 1 · Lição 2 de 22/14 no curso~12 min
Lições do módulo (2/2)

Controle de Fluxo

Para tornar nossos programas dinâmicos e capazes de tomar decisões, utilizamos estruturas de fluxo de controle: instruções condicionais e loops.

Condicionais: if, else if e else

A instrução if executa um bloco de código somente se uma condição booleana específica for verdadeira.

Java
int temperature = 25;

if (temperature > 30) {
    System.out.println("Fa molto caldo!");
} else if (temperature >= 20) {
    System.out.println("Il clima è piacevole.");
} else {
    System.out.println("Fa freddo.");
}

Operadores Lógicos

Podemos combinar múltiplas condições usando operadores lógicos:

  • && (AND): Retorna true se ambas as condições forem verdadeiras.
  • || (OR): Retorna true se pelo menos uma das condições for verdadeira.
  • ! (NOT): Reverte o valor lógico da condição.
Java
boolean hasLicense = true;
boolean hasCar = false;

if (hasLicense && hasCar) {
    System.out.println("Puoi guidare.");
}

Loops: while e for

Os loops nos permitem executar repetidamente um bloco de código.

O ciclo while

Executa o código enquanto a condição especificada permanecer true.

Java
int count = 1;
while (count <= 3) {
    System.out.println("Conteggio: " + count);
    count++; // Increment count by 1
}

O ciclo for

Ideal quando sabemos antecipadamente o número de iterações a realizar. A sintaxe requer inicialização, uma condição de encerramento e uma expressão de incremento.

Java
for (int i = 0; i < 5; i++) {
    System.out.println("Iteration: " + i);
}

Condicionais Avançados: o switch

Quando precisamos comparar uma única variável com vários valores constantes, a instrução switch torna o código muito mais limpo do que vários blocos if-else encadeados.

Java
int dayOfWeek = 3;
switch (dayOfWeek) {
    case 1:
        System.out.println("Monday");
        break;
    case 2:
        System.out.println("Tuesday");
        break;
    case 3:
        System.out.println("Wednesday");
        break;
    default:
        System.out.println("Other day");
}

Controle de Loop: break e continue

Podemos alterar o fluxo normal de um loop usando duas instruções especiais:

  • break: finaliza imediatamente a execução do loop mais interno, saindo completamente dele.
  • continue: ignora o resto do código na iteração atual e vai diretamente para a avaliação da condição para a próxima iteração (ou a expressão de incremento em um loop for).
Java
for (int i = 1; i <= 5; i++) {
    if (i == 3) {
        continue; // Skips printing for the number 3
    }
    System.out.println(i);
}

Experimente você mesmo

Exercício#java.m1.l2.e1
Tentativas: 0Carregando…

Complete o código verificando a variável score: se for maior ou igual a 60, imprima Pass, caso contrário imprima Fail.

Carregando editor…
Mostrar dica

Use `if (score >= 60) { ... } else { ... }` e imprima a string exata solicitada.

Solução disponível após 3 tentativas

Exercício#java.m1.l2.e2
Tentativas: 0Carregando…

Escreva um loop for para imprimir os números de 1 a 5 (inclusive) em linhas separadas.

Carregando editor…
Mostrar dica

Use a inicialização `int i = 1`, a condição `i <= 5` e o incremento `i++` dentro do cabeçalho do loop `for`.

Solução disponível após 3 tentativas

Exercício#java.m1.l2.e3
Tentativas: 0Carregando…

Complete o código usando um loop while para imprimir os números de 3 a 1 (inclusive) em linhas separadas.

Carregando editor…
Mostrar dica

Escreva `while (count >= 1) { ... }` imprimindo `count` e depois decrementando-o usando `count--;`.

Solução disponível após 3 tentativas